컴퓨터 / 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

여름용 목토시 마스크 리플러스 이어 멀티스카프
남성 분리수납 확장형 여행백팩 기내용 출장용 BK102
더블 지퍼 이너백 백인백 파우치 속가방 멀티 다용도
방수 슬리퍼 버클신발 남자슈즈 여름 여행신발
빠띠라인 엔틱 황동 USB전용 탁상선풍기
이케아YUPPIENALLE 위우피에날레 휴대폰홀더 열쇠고리
갤럭시 A32 달토끼 홀로그램 미러범퍼케이스
에펠 20인치 전자식 듀얼헤드 공업용 업소용 대형 리모컨 선풍기 UEF-2320 사무실 헬스장 공장 미용실
칼라나무목판액자(블루)
이케아 GLASIG글라시그 미니양초홀더 유리5x5cm 5개입
이케아 ENUDDEN 에누덴 문걸이행거
(리버퍼니쳐) 클라인 원목 슬라이딩 틈새장 200 (착불)
(꿈쟁이) 에코팟-메시지콩
3M 일반 막대걸레 표준형 바닥청소 3165
902s ARMOUR 모자처럼 착용하는 헬멧(AR10)
여성 하프집업 베이직 아노락 세트

미세모 미니 틈새 먼지제거 브러쉬 투명보호캡 포함 자동차 실내 청소솔
칠성상회
3M 몰딩 양면테이프 회색 8mm x 11M
바이플러스

맨위로↑