Play Life Work


마리아DB 컨테이너 설정을 무사히 마치셨다면


이제 컨테이너로 접속해서 몇가지 설정을 수정해봅시다.


1. docker의 "비디오 형식" 탭에서 실행 중인 mariadb 컨테이너를 더블 클릭해줍니다.


2. 컨테이너 설정 - 터미널 탭에서 [생성] 버튼을 눌러 bash를 열어줍니다.


3. 터미널에 다음과 같이 입력합니다.

 mysql -u root -p (mysql 실행 명령어)

 컨테이너 설정에서 MYSQL_ROOT_PASSWORD로 설정한 값을 입력하여 줍니다.


 비밀번호를 입력하고 나면 다음과 같이 마리아DB에 접속이 됩니다.



3. MariaDB 캐릭터셋 확인

 MariaDB [(none)]> (마리아DB에 접속되어있는 상태)


 show variables like 'c%';
(;세미콜론까지 써주세요)

위처럼 latin1으로 맞춰져 있을 겁니다.


한글이나 특수문자를 사용할 경우 캐릭터셋이 맞지 않으면 텍스트가 깨질 수 있으니


utf8로 설정을 변경해보겠습니다.


 명령어 exit를 쳐서 MariaDB 세션을 종료해주세요.


4. 마리아DB 설정값 변경

 우선적으로 vi에디터가 설치되어있지 않으므로 아래 명령어를 먼저 실행하여 vi에디터를 설치합니다.

 apt-get update
 apt-get install vim (y Enter)
 vi /etc/mysql/my.cnf (vi에디터로 설정창을 엽니다.)

 

[client]

port = 3306

socket = /var/run/mysqld/mysqld.sock

default-character-set = utf8 << 추가


[myslqd]

pid-file = /var/run/mysqld/mysqld.pid

socket = /var/run/mysqld/mysqld.sock

character-set-server = utf8 << 추가

:wq (저장하고 vi에디터 종료)


5. 컨데이너 재기동

개요에서 [다시 시작]을 눌러줍니다.


재기동 이후에는 bash를 실행하여서


mariaDB에 접속하신다음 캐릭터셋 설정값이 바뀌었는지 확인해보시면 됩니다.
(위에 1번부터 3번 프로세스 참고)

아래처럼 utf8이 보이면 적용 성공!


이렇게 마리아DB 설치 및 기본적인 설정이 완료되었습니다.
짝짝짝

 

다음 포스팅에는 마리아DB를 좀 더 효율적으로(GUI를 이용) 명령어 쳐서 작업하기 너무 힘들어요ㅠㅠ

사용할 수 있는 툴을 소개해드리도록 하겠습니다.


그럼 이만



1

  • 안녕하세요. 말씀해주신거 대로 시도해보긴 했는대...timezone 설정을 어떻게 해야될지 모르겠네요. ㅠㅠ 알려주세요.


마리아DB란 무엇인가?

MariaDB는 오픈소스의 관계형 데이터베이스 관리 시스템(RDBMS)이다. 

MySQL과 동일한 소스 코드를 기반으로 하며, GPL v2 라이선스를 따른다.

오라클 소유의 현재 불확실한 MySQL의 라이선스 상태에 반발하여 만들어졌으며...

 출처 : 위키피디아 MariaDB 항목


간단하게 말하자면 오픈소스 RDBMS입니다.


오픈소스 라이센스는 GPL v2를 기반으로 하기때문에 상업적으로 이용가능하나 수정하여 배포할 시에는 소스를 전체 공개해야합니다.


그러나! 그건 어디까지나 소스를 수정배포할때이며


우리처럼 그냥 일반 설치 사용자는 크게 제약없이 사용할 수 있다.


마리아DB 또한 도커를 통해 간편하게 나스에 설치해서 이용할 수 있습니다.

자세한 정보는 공식 홈페이지에서 > https://mariadb.com/kb/ko/mariadb/


자 그럼 시작해볼까요?


1. docker로 들어가셔서 레지스트리 항목에서 mariadb를 검색합니다.

저는 가장 위에 인증(?) 표시가 되어있는 mariadb를 다운받았습니다.

tag는 원하시는 버전이 있으면 선택하시면 되고요. 저는 최신 latest를 선택했습니다.




2. 다운로드가 완료되셨다면 이미지 탭으로 가셔서 컨테이너 설정을 하러갑니다.


컨테이너가 뭐냐고요? 아직 도커에 대해 이해를 못하셨다면

[Synolog NAS 활용] docker를 통해 NAS 활용도 높이기 보러가기


mariadb:latest를 더블클릭해주시면 설정화면이 나타납니다.


컨테이너 이름은 원하시는걸로 하시고

저는 mariadb로 했습니다.


다음은 포트설정입니다.

로컬포트는 사용자가 임의로 설정해주시고 나스의 다른 포트와 겹치지 않게 주의하세요.

로컬포트는 나중에 외부에서 db에 접근하기 위한 포트정보로 우선은 자동으로 설정하시고 나중에 할당된 포트정보를 이용하셔 됩니다.

컨테이너 포트는 3306으로 반드시 설정(이 부분도 변경할 수 있지만 mariadb 설정을 바꾸셔야 하니 그대로 갑시다)



고급설정으로 넘어갑니다.

고급설정 - 환경 탭에서 + 버튼을 눌러서 변수를 추가해줍니다.

MYSQL_ROOT_PASSWORD = test


변수부분에 MYSQL_ROOT_PASSWOD를 입력해주시고 값 부분에는 test(루트권한 비밀번호니 자신만 아는정보로 설정)로 설정했습니다.


이 환경변수 정보가 없으면 컨테이너가 실행되지 않으니 꼭 입력하시기 바랍니다.


추후 mariadb에 접속하기 위해서도 해당 비밀번호가 필요합니다.


다음과 같이 모두 입력하셨다면 적용하시고 완료하시면


[비디오 형식] 항목에서 서버가 실행 중이라고 보일 겁니다.




여기까지 따라하셨다면 도커 컨테이너 설정은 모두 끝났습니다.


너무 쉽죠?


다음화에서는 mariadb를 이용하기 위해 서버 설정을 배워보도록 하겠습니다.



1


여기까지 오셨다면 


비밀번호 없이 스트리밍 서버 구축은 완료하셨겠군요!


축하드립니다.


쉽지만 어려운 도커의 세계 -ㅁ-


아직 서버 구축을 못하셨다면 이전 포스팅을 참고해주세요.





이번 포스팅에서는 aircomix 스트리밍 서버에 비밀번호를 거는 겁니다.


사실 개인 NAS IP나 DDNS를 알고있지 않는한 누가와서 접속할 일은 특별히 없을텐데요.


그렇다고 와서 NAS를 해킹할 수 있는 상황도 아니고(docker로 만들어진 가상화 서버기 때문에 기타 NAS 서버에 크게 무리를 줄 수있지도 않습니다)


그.러.나


하고싶잖아요? 저도 그래서 했어요 ㅋㅋ


출발해보시죠


서버 암호 설정에 이전에 필독하세요




1) 로그인 ID 고정

보시는 바와 같이 Aircomix 앱에서 로그인 정보 작성 시 비밀번호만 지정할 수 있습니다.


IDAirComix고정해야합니다.


이후 설정 과정을 따라하실때 ID를 임의로 설정하지마세요.


2) 비밀번호 Only 숫자

몇 번 테스트를 해봤는데 암호를 문자로 하니까 인식을 못해서 내부폴더에 접근이 안되는 것 같습니다.


Encoding등 다른문제일수도 있는데 그냥 편하게 숫자로 설정하니까 잘됩니다.



1. 컨테이너 설정 - 터미널 탭에서 [생성] 버튼을 눌러 bash를 열어줍니다.


2. 터미널에 다음과 같이 입력합니다.

 cd ~/song31-comix-server-9d2630a/conf (압축해제한 소스파일 내부로 이동)

 cp htaccess /var/www/comix-server/.htaccess (htaccess 파일을 스트리밍 서버 루트[/var/www/comix-server]로 복사)

 cd /var/www/comix-server (서버 루트 폴더로 이동)

 vi .htaccess (복사된 .htaccess파일을 vi편집기로 열기)

.htaccess 파일을 열어 위와 같은 내용으로 수정해주시면 됩니다.


3. 암호유틸 설치

 apt-get update 

 apt-get install apache2-utils (암호유틸 설치 명령어)


4. 암호설정 파일 생성

 htpasswd -c .htpasswd AirComix (암호설정 파일 생성- 로그인정보 해당 명령어 실행 후 비밀번호 숫자로 입력)

 cat .htpasswd (암호파일 내용 출력, 암호파일 생성 확인용)

제대로 생성이 되었다면

AirComix:$apr1$y.....어쩌구저쩌구(입력하신 비밀번호는 암호하되어 보여집니다.)


5. 아파치서버 설정 변경

 vi /etc/apache2/sites-enabled/httpd-comix.conf (vi편집기로 아파치서버 설정 열기) 

설정을 다음과 같이 바꿔줍니다.

기존 서버 구축시 설정한 내용에서 <Directory .... </Directory> 이 부분이 추가되는 겁니다.


6. 변경 설정 적용을 위한 아파치 서버 재기동

 apache2ctl restart


7. 웹브라우저에서 접속 테스트

다음과 같이 인증정보를 요구하는 창이 뜬다면 절반의 성공입니다.

사용자이름 : AirComix

비밀번호 : 설정한 숫자 비밀번호

(웹에서는 문자로도 성공하나 앱에서 실패되니 숫자로 하시길 추천합니다)


ID/PW 검증을 성공해서 내부 폴더가 보이는 화면으로 넘어가셨다면 성공입니다.





Comment +19

  • 호랑호랑 2017.10.27 17:11 신고

    ^ ^....비밀번호도 올려주셨군요...감사합니다.

    그런데 따라하다보니...htpasswd -c .htpasswd AirComix 라고 명령을 하면.
    command not found 라고 나오네요.

    구글 검색을 해봤는데...역시나 초보에겐 구글링도 힘드네요...^ ^

  • 호랑호랑 2017.10.29 13:50 신고

    아마도 다른것을 쓰셔서 잊으신듯...

    저처럼 처음으로 에어코믹스를 설치하시는 분들은.

    sudo apt-get update 하고 난 뒤에

    sudoh apt-get install apache2-utils를 해야 오류없이 설치가 되네요...^ ^

    정말 돈키호테님...그동안 수고 많으셨습니다...꾸벅..

    앞으로도 좋은 글 부탁드려용...^ ^

    • ^^ 피드백 감사합니다.

      맞네요 호랑호랑님 말대로

      apt-get update 부분이 선행되어야하는데 그 부분이 누락되었네요.

      포스팅 내용도 덕분에 수정했습니다.

      감사합니다.

  • 이제 다음편은 마리아 디비인가요? ^^; 기다리는 중이에요

  • 은비트로 2017.11.24 17:05 신고

    감사합니다.
    좋은 글 잘 보았습니다.
    덕분에 DSM 업데이트시 매번 수정해줘야했던 불편함을 덜었네요.
    생유베리 감솨. ^^

  • docker 의 마리아디비 참고가 많이됬습니다. 감사합니다. (귀차니즘으로 아직 해보진 못해봤지만 될거 같네요. )

  • 따까리 2018.01.02 16:37 신고

    감사합니다 너무 도움이 되었네요 초보가 따라 할 수 있을정도로 잘 따라왔는데요..

    cp htaccess /var/www/comix-server/ .htaccess을 입력하면
    ' .htaccess' is not a directory로 뜹니다

    뭐가 잘못이 되었을까요?



    • 안녕하세요. 따까리님

      cd ~/song31-comix-server-9d2630a/conf 이 명령어를 수행해서 해당위치에서 .htaccess 복사명령을 수행하신건지 확인해보시기 바랍니다.

      아니면 cp 명령어 마지막에 .htaccess/ < 이렇게 슬래쉬가 되어있으면 directory로 인식하기때문에 해당 부분도 확인해보세요.
      안되시면 다시 피드백 주세요.

      감사합니다.^^

    • 따까리 2018.01.03 10:35 신고

      돈키호테님

      모두 해결되었습니다. 너무 감사합니다^^

    • 즐거운 NAS 생활하세요~^^

  • 초보 2018.01.03 22:41 신고

    안녕하세요 정말 친절한 안내 덕분에 쉽게 aircomix 서버하나 만들었습니다 너무 감사합니다.
    다른분도 코멘트 남기셨지만 아주 작은 거 한가지만 피드백 드리려구요~
    혹시 아니라면 말씀해주세요 :)

    cp htaccess /var/www/comix-server/ .htaccess

    위 .htaccess 앞에 띄어쓰기가 하나 있어서
    ' .htaccess' is not a directory
    메시지가 나오네요~ 띄어쓰기를 빼고 다시 따라가니 정상적으로 됩니다.

  • 무한삽질 2018.01.05 01:11 신고

    좋은 강의 감사합니다 ^^ 근데 저는 서버까진 성공했는데 아이피:31257 은 안되네요

    You don't have permission to access / on this server.

    이러면서 막습니다.. 터미널에서도 마지막에 오류가 ah00112 가 뜨더라구요?

    아파치2가 문제인건지... 해결방법좀 부탁드립니다~

  • Michael 2018.04.18 16:36 신고

    httpd-comix.conf 파일 수정(추가)이 사진으로 되어 있어서 글자구분이 잘 안됩니다.

    텍스트로 올려주실수 없는지요?