음악 및 영상을 스트리밍으로 듣거나 볼 수 있는 오픈소스 서버 솔루션이다. 이 솔루션은 엄연히 설치 문서가 있지만 설치가 쉽지 않다. 공식 설치 문서(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 설정 파일 수정
이쯤 오면 아래 설치 화면 나와야 하는거 아니냐 하겠지만, 그게 또 정식 문서와 다른 점이 있었다.
저 화면을 보려면 다음 두 가지를 해야 한다.
첫째, 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가 뜰 것이다.
위 과정을 넘어가면 비로소 아래 화면들을 볼 수 있고 설치를 마무리할 수 있다.
5. 설정 마무리.
이 상태로 설치하면 "개인 단독 사용"이 되고 관리자로 로그인해도 관리자 화면이 나오지 않는다. 그래서 아래와 같이 설정을 추가로 하면 친구들과 함께 쓸 수 있는 서비스가 가능해 진다.
mail_enable = "true" allow_public_registration = "true" |
설정 파일에 내용이 좀 많기는 하지만 워낙 기능이 많은 프로그램이니 이 정도는 감수해도 된다.
마지막으로 "secret_key" 값은 임의로 바꿔도 되는데 설치 기본값으로 두지 말고 반드시 바꾸자.