컴퓨터 / Computer

CentOS 7에 ampache 설치하기

Ampache ampache-logo.png






음악 및 영상을 스트리밍으로 듣거나 볼 수 있는 오픈소스 서버 솔루션이다. 이 솔루션은 엄연히 설치 문서가 있지만 설치가 쉽지 않다. 공식 설치 문서(https://github.com/ampache/ampache/wiki/Installation)에 있는 대로 설치를 하면 중간에 멈춰서 가질 못한다. 그래서 한참을 고민하다가 비슷하게 고민한 사람의 기록을 참고했더니 설치를 할 수 있었다. 



0. 설치 환경

 - OS : CentOS 7.4

 - Web Server : Apache 2.4.6

 - PHP : 7.2.28

 - MySQL : 5.5.64


1. 사전 설치

이 부분이 정말 중요하다. 설치 과정에서 사전 요구사항을 설치하는게 70%를 차지한다. 20%는 cfg 파일 설정이다. 

 

 - 웹 서버 : 여기서는 apache

 - php : 7.1 이상 (이 문서에서는 7.2 기준)

 - 그리고 아래 

    PDO

    PDO_MYSQL

    hash

    session

    json

    simplexml (optional)

    curl (optional)


위 목록이 공식 문서에 있는 "사전 요구사항"이다. 그런데 속지 말자. 아래 목록을 더 설치해야 한다.


   composer    (이게 설치하기 제일 까다로움 )

   php-common

   php-mcrypt

   php-pdo

   php-cli

   php-mysql

   php-gd

   php-xml

   libmcrypt

   ffmpeg

   git


위 목록의 모듈/프로그램들은 보통 epel 다 등록해 둔 상태에서 yum 명령어로 설치할 수 있다. 이를테면 아래와 같다.


yum install php-common  ffmpeg git 


이 중에서 composer 설치할때 "의존성 오류"가 날 수 있다. 이때 yum repository에 가서 php 7.2 버전이 아닌 저장소들은 잠시 중단을 시켜야 한다.



여기까지는 아파치(httpd)와 php와 mysql을 설치하고 composer 등 관련 모듈을 다 설치하는 과정이다. 저 모듈들을 다 설치하였다면 이제 본격적으로 ampache 설치로 넘어간다.



2. ampache 파일 받기


amapche 를 설치할 아이디나 폴더를 정한 후 아래 둘 중 하나를 설치한다.


 git clone https://github.com/ampache/ampache.git


혹은 


 sudo git clone -b develop https://github.com/ampache/ampache.git


두번째에 sudo가 있는걸 보면 짐작하시겠지만, 첫번째는 root 로 실행하였고 두번째는 해당 서비스 폴더 아이디로 실행하였다. 


3. ampache 사전 설정


이제 받은 파일에 apache 권한을 아래와 같이 준다.



  sudo chown -R apache. ampache/


root 권한이 있다면 root로 실행하여도 된다. 



그리고 composer로 설정을 마무리 한다.


$ cd /var/www/html/ampache

$ sudo su -

# composer install --prefer-source --no-interaction


 주의 1) composer는 root 상태로 실행

 주의 2) ampache 폴더에서 실행 



4. ampache 설정 파일 수정


이쯤 오면 아래 설치 화면 나와야 하는거 아니냐 하겠지만, 그게 또 정식 문서와 다른 점이 있었다.


Installation screenshot 


저 화면을 보려면 다음 두 가지를 해야 한다.

 첫째, config 폴더에 있는 ampache.cfg.php를 수정해야 한다. (해당 폴더에 ampache.cfg.php.dist 파일이 있는데 이 파일을 ampache.cfg.php로 복사하여 설정한다. 해당 문서를 열어서 DB, DB 사용자, 비밀번호 등을 입력하고 특히 "폴더" 설정도 해 준다.

 둘째, sql 폴더에 있는 ampache.sql 을 DB에 insert 한다. (mysql -u root -p ampache < sql/ampache.sql  (https://github.com/ampache/ampache/issues/1823 )) 위에 있는 저 이미지만 봤을때는 이미 DB도 자동생성하는 것처럼 보이지만 아직은 그렇지 아니하더라. 이 과정 없이 가면 아래와 같이 화면이 나오는데 DB 부분에 error가 뜰 것이다.


Installation screenshot 




위 과정을 넘어가면 비로소 아래 화면들을 볼 수 있고 설치를 마무리할 수 있다.



Installation screenshot 

Installation screenshot 

Installation screenshot 









5. 설정 마무리.


이 상태로 설치하면 "개인 단독 사용"이 되고 관리자로 로그인해도 관리자 화면이 나오지 않는다. 그래서 아래와 같이 설정을 추가로 하면 친구들과 함께 쓸 수 있는 서비스가 가능해 진다.



  mail_enable = "true"

  allow_public_registration = "true"



설정 파일에 내용이 좀 많기는 하지만 워낙 기능이 많은 프로그램이니 이 정도는 감수해도 된다.


마지막으로 "secret_key" 값은 임의로 바꿔도 되는데 설치 기본값으로 두지 말고 반드시 바꾸자. 


Comments

바로타 UN 팔각성냥 600개비 x(6개)성냥개비 불쏘시개
스텐 메이크업 브러쉬 파운데이션 스파츌라 M12738
원컬러힙색 힙색 슬링백 크로스백 스포티 가방
여성 얇은 골지양말 시스루 긴양말 롱삭스 여름양말
한일전기 HPF-300 고풍량배풍기
SONY 공DVD DVD-R 4.7GB 16x 10P DVDRW 공디브이디
팔걸이마우스패드 - 대의자 책상 팔받침대
3단접이식스탠드선풍기 탁상용선풍기 미니선풍기
이케아 YLLEVAD 윌레바드 미니액자 화이트13x18cm
우드케어 오일스테인 woodcare 10리터
3M 마루보호 패드 원형 혼합형 대용량 기획팩 162매입
이케아 FINSMAK 핀스마크 미니 양초 캔들 유리 홀더
남자 츄리닝 운동복 밴딩 무지일자 트레이닝팬츠 6849
(마루)오아시스변기커버 대-3533 (반품불가)
신세계푸드 불고기 치아바타 샌드위치 6팩+1팩 추가증
휴대용열쇠고리 5개입 열쇠고리 나침반 온도계

방우 시가 소켓 12V - 24V 겸용 카라반 캠핑카 DIY
칠성상회
라인플러스 화인 세필 화이트 보드마카 (12개입) 1다스 (검정색)
칠성상회

맨위로↑