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

투라인 스포티포인트 찍찍이 아동 운동화 205392
키밍 기능성 스포츠 장갑 스마트폰 터치 방한 글로브
BYC 여성 내복 60수 프라임 상하 DOLT6658-화이트
부드럽고 포근한 소프트 터치 약기모 라운드티
한일의료기 극세사누빔 절전형매트 전기방석 180cm
LG 그램17 17Z90S 노트북 코팅키스킨
키친아트 핸디블랜더 거품기 분쇄기 주서기 믹서기
LG 울트라PC 17UD70P 노트북 코팅키스킨(지문뚫림)
원형 LED 직부등 엣지 6인치 16W 주광 KS 자석타입
심플 부착식 정리 수납함 미니 수납 서랍장
해동지(월드 420x365MM 1줄(100개)
브이텍 벽지 접착제125g VT107K 벽지풀 이음새 보수용
고급 스텐레스스틸 실버주전자 7리터 주방주전자
외풍 차단 샷시형 창틀 바람막이 패드 1m X 5개
업소용 가정용 크린랩 알미늄 쿠킹 호일 33cmx30m
한우물 구운 주먹밥 100g 5종 10개

차량용 메탈 주차번호판 휴대폰번호판 블랙
칠성상회
연필 HB 5본 초등생연필 메모펜슬
칠성상회

맨위로↑