시놀로지 Docker로 WordPress 완벽하게 설치하기

시놀로지는 정말 좋은 어른들의 장난감인것 같습니다. 할게 이것 저것 무궁무진하게 많습니다. 우리 가족의 사진 히스토리를 기록할 수도 있고 어디에서든지 비용부담없이 동영상을 즐길 수도 있고 만화서버로도 이용할 수 있습니다.

그중에서도 프로그래머나 개발자 라면 정말 반길만한 서비스가 있는데, 바로 도커(Docker)라고 할 수 있습니다. 도커에 대해서 자세히 알려면 공부를 많이 해야 겠지만 간단하게 말한다면… 개발자가 개발을 하다가 “이게 아닌가벼~~”하는 생각이 들때 그냥 도커 컨테이너만 삭제해 버리면 깨끗하게 삭제가 가능하다는 것입니다. 다시 시작 할 수도 있고 도커로 개발이 완료되었을때 그상태 그대로 운영으로 돌릴 수도 있습니다. 저도 몇개의 도커사용법을 포스팅했는데요. 아래의 경로를 참고하세요.

시놀로지 Docker 기본 사용법
시놀로지 Docker로 Nodejs 웹서버 설치하고 띄우기

이번에는 시놀로지 도커에 워드프레스를 완벽하게 설치하는 과정을 포스팅해 보려고 합니다.

WordPress 이미지 다운로드 받기

WordPress를 도커형태로 설치하기 위해서는 해당 이미지를 다운로드 받아야 합니다. 이미지라고 해서 사진이나 그림을 말하는 것이 아니라 누군가가 만들어 놓은 프로그램이 담겨있는 컨태이너 원본 이라고 보시면 됩니다. 이 이미지를 사용하여 컨테이너를 무한개 계속해서 만들어 낼 수 있습니다.

tistory-image

  1. 좌측에있는 레지스트리 메뉴를 선택합니다.
    • 레지스트리 메뉴는 Docker을 공식적으로 제공하는 Docker Hub 웹사이트의 목록을 불러와서 보여줍니다.
  2. 검색창에서 WordPress를 검색합니다.
  3. 검색된 내용 중 우측에 메달모양은 공식이미지라는 표시입니다. 별표는 다운로드수 입니다 많을 수록 인기가 많다는 뜻이죠.
  4. 해당 이미지의 사용설명을 볼 수 있는 링크버튼입니다. 이것을 눌러서 설명서를 보고 설치하면 됩니다.
  5. 이것은 공식이미지는 아니지만 그래도 인기있는 이미지입니다. bitnami라는 유저가 올려놓은 이미지입니다.
    • 공식이미지가 영문버전만 제공되는 반면 bitnami의 이미지는 멀티랭귀지가 포함된 이미지라고 합니다.(설치해서 확인은 못해봤네요 ^^;)

tistory-image

  1. wordpress목록을 더블클릭하거나 선택 후 다운로드 버튼을 클릭합니다.
  2. 팝업창이 뜨는데 기본으로 최신버전인 latest가 보입니다. 보통은 이것을 다운로드 받으면 되고 특정버전을 다운로드 받으려면 Select창을 클릭하여 원하는 버전을 다운받을 수 있습니다.
    • apache : 아파치 웹서버가 포함된 버전 입니다.
    • php-fpm : fpm은 FastCGI Process Manager의 약자로 동적처리를 빠르게 해주는 CGI라고 보시면됩니다.
    • php-fpm-alpine : alpine는 알파인 리눅스(Alpine Linux)를 말하며 가볍고 간단하고 보안성을 목적으로 개발한 리눅스 배포판으로 Docker에서 많이 사용되는 OS가 포함된 버전입니다.
  3. 다운로드 버튼을 클릭하여 다운로드 받습니다.

tistory-image

  1. 이제 좌측의 이미지 메뉴를 선택합니다.
    • 머뉴의 오른쪽에 ‘1’이 표시되어 있네요. 현재 다운로드되고 있는 숫자를 표시합니다.
  2. WordPress이 최신 버전이 latest버전이 다운로드 되고 있는 것을 볼 수 있습니다.
  3. 디스크 모양의 아이콘이 계속 움직이며 현재 다운로드 중인 용량 표시를 해 줍니다.

tistory-image

  1. 좀 기다리면 다운로드가 완료됩니다.
  2. 설치 설명서를 보기위해 링크를 클릭합니다.

WordPress 설치 설명서

tistory-image
위와 같은 DockerHub의 WordPress 설명서 웹사이트가 열립니다. 이 화면을 스크롤해서 아래로 내려값니다. 내용은 이미지별로 조금씩 다르므로 알아서 잘 찾아봐야 합니다. 영어를 잘해야 해요.

tistory-image

  1. WordPress설치에 대한 정보 입니다.
  2. db설치에 대한 정보입니다.
    • 해당이미지에 db는 포함되어 있지 않습니다. 따로 설치를 해줘야하는데 잘 어울리는 db와 버전은 해당 정보에 표시되어 있습니다. (mysql 5.7버전)
    • 위의 방법처럼 mysql을 다운로드 받아서 설치해줘야 합니다. 따로 mysql을 다운로드 받는 것은 설명하지 않고 설치하는 것만 설명하겠습니다.
  3. 로컬 폴더에 생성할 폴더명입니다.

MySQL 설치하기

위와 똑같은 방법으로 Mysql을 다운로드 받습니다. 주의할 점은 다운로드 받을 떄 위의 설명서 처럼 5.7버전을 다운받으면 됩니다. (5.7.9버전을 받으시면되요)

다운받은 이미지로 컨테이너를 설치 할 차례입니다.

tistory-image

  1. 실행 버튼을 클릭하여 컨테이너를 설치를 시작합니다.
  2. 컨테이너이름을 선택합니다. WordPress전용을 사용할 예정이므로 wordpress_mysql이라고 명명합니다.(원하시는 이름 적으시면되요)
  3. 고급설정 메뉴를 클릭합니다.

tistory-image

  1. 자동 재시작 활성화는 실제 운영서비스할 때 필요하고 개발 시에는 굳이 선택할 필요는 없습니다.
  2. 볼륨 설정으로 넘어갑니다.

tistory-image
로컬폴더와 컨테이너 폴더를 자동으로 동기화 시키기 위해 매칭해주는 단계입니다. 이 폴더를 연결해 줘야 로컬에서 스킨변경 등의 작업을 했을때 컨테이너의 워드프레스 스킨이 변경이 자동 반영 됩니다. 혹시 나중에 컨테이너를 삭제한다고 했을때도 해당 폴더의 내용은 남아있기 떄문에 일부 자동 백업의 역활도 합니다.

  1. 폴더추가 버튼을 클릭합니다.
  2. 추가 팝업이 뜹니다.
    • 저는 Docker파일은 별도의 Docker 폴더에 모두 모와 놓습니다.(개인취향)
    • 위에서 설명서 3번 해당하는 volumes 설정처럼 폴더를 새로 만듭니다.
    • db는 mysql의 파일이,wordpress는 워드프레스의 파일이 저장됩니다.
    • **현재는 mysql을 설치중이니 db를 선택**합니다.

tistory-image

  1. 컨테이너의 폴더입니다.
    • 이 폴더는 사용자가 만드는 것이아니고 이미지를 만든 사람이 지정한 폴더이므로 해당 정보는 사용설명서를 참고해야 합니다.
  2. 아까 설정한 로컬(시놀로지 내부)폴더의 경로입니다.

tistory-image
네트워크는 별도의 네트워크로 wordpress와 mysql을 묶어도 되지만 그냥 bridge로 나두면 됩니다.

tistory-image
포트설정도 중요한 부분입니다. 포트를 잘 맞춰서 설정해 줘야 합니다.
로컬(시놀로지)의 포트와 컨테이너의 포트를 연결해 줍니다. 보통은 로컬 포트와 컨테이너 포트를 동일하게 해줍니다.
포트는 1개 이상이며 컨테이너 포트는 기본 제공해 줍니다.

tistory-image
링크는 그냥 놔두면 되요
환경 설정 정보도 사용설명서에 나와 있습니다.

  1. 환경변수를 넣기 위해 +버튼을 눌러 줍니다.
  2. 사용설명서에 나와 있는 것 처럼 4개의 변수와 값을 입력합니다.
  3. 적용을 클릭합니다.

tistory-image
고급설정을 완료하면 일반설정화면으로 넘어옵니다.

  1. 다음 버튼을 클릭합니다.

tistory-image

  1. 컨테이너 설정하기 전에 설정했던 내용을 요약해서 보여줍니다.
  2. 선택 시 설치가 완료되면 컨테이너가 자동 실행됩니다.(기본값)
  3. 적용 버튼을 클릭하면 설치가 완료되고 실행됩니다.

WordPress 설치하기

Mysql이 설치되었으니 이제는 본격적으로 WordPress를 설치합니다.

tistory-image
설치하는 방법은 위에 설명했으니 중요한 볼륨 설정에 대한 설명입니다.

  1. 볼륨탭을 선택합니다.
  2. 폴더를 추가하고 마운트 경로를 설정합니다. (설명서 참조)

tistory-image
네트워크는 mysql과 같은 네트워크에 있어야 하며 기본 bridge에 놓습니다.

tistory-image

  1. 로컬포트는 설명서에는 8080 포트설정하라고 되어 있기는 한데 그냥 자신이 원하는 포트를 잡아주셔도 됩니다.
  2. 컨테이너 포트는 설명서에 적어준 포트 그대로 적어줘야 합니다. 80 포트이네요.

tistory-image
링크는 wordpress를 실행시켰을때 같이 실행되어져야할 다른 컨테이너을 링크시키는 것입니다.

  1. 워드프레스는 필수로 mysql을 필요로 하니 좀 전에 설치한 wordpress_mysql을 선택합니다.
  2. 별칭으로 db로 입력합니다. (wordpress에서 환경변수로 이 이름으로 연결시켜줍니다.)

tistory-image
마지막으로 중요한 환경설정을 해 줍니다.

  1. +버튼을 클릭합니다.
  2. 설명서대로 4개의 환경변수를 설정합니다.

tistory-image
요약정보를 확인하고 적용버튼을 클릭하여 설치합니다.

방화벽 열어주기

도커가 설치되었다고 바로 화면을 볼수 있는 것은 아닙니다. 방화벽을 열어줘야 합니다. 물론 원래 방화벽을 잠궈놓지 않고 사용하신다면 그냥 바로 열리겠지만 보안상 상당히 위험한 선택이므로 항상 방화벽은 닫아 놓으시고 필요한 것만 열어서 사용하는 습관을 들여야 합니다.

tistory-image

  1. 제어판을 선택합니다.
  2. 제어판 중 보안 메뉴를 선택합니다.
  3. 방화벽을 선택하여 규칙편집을 합니다.
  4. 내장 응용프로그램 선택의 리스트 중에 자동으로 목록이 잡힌 2개의 응용프로그램을 볼 수 있는데 2개 모두 체크를 하고 열어줍니다.
  5. 확인을 클릭합니다.

작동 확인 하기

드디어 설치가 완료되었고 실행도 시켰습니다.
이제 정상 작동하는지 확인을 해야 합니다.

tistory-image

  1. 다시 좌측의 컨테이너 메뉴를 선택합니다.
  2. 2개의 컨테이너가 추가되어 실행되어지는 것을 볼 수 있습니다.
  3. 현재 실행주인지 정지중인지 확인 할수 있고 강제로 중지 및 실행시킬 수 있는 버튼이 있습니다.

실제 웹사이트 확인하기

실제로 화면이 보여지는지 확인해 봅니다.
본인의 http://본인의 시놀로지 아이피번호:포트번호로 접속하면 됩니다.

예 : http://192.158.0.5:8080

아래와 같은 워드프레스 설치화면이 나오면 일단 성공입니다. 잘 하셨어요.

tistory-image
초기 설정값을 입력하면 설치가 완료 됩니다.
다만 아쉬운 것은 공식 WordPress는 멀티랭귀지를 지원하지 않아서 한글 설치화면은 나오지 않습니다. 영문으로 설치되니 이점 참고하세요.

외부 접속시 공유기 포트포워딩

내부망에서 아이피번호로는 접근이 되지만 외부에서 URL로는 접근이 되지 않습니다.
공유기에서 포트포워딩을 설정해줘야 외부에서도 접근이 가능합니다.

tistory-image
워드프레스의 포트를 열어줘야 합니다. mysql은 포트를 열어줄 필요없습니다.

  1. 외부포트 : 인터넷 외부에서 접속할 포트번호가 8080이라면..
  2. 내부포트 : 자동으로 내부포트인 8080으로 전달해 준다 입니다.
  3. 등록을 하면 리스트에 추가가 되고 우선순위도 지정할 수 있습니다.

이제 아래와 같이 URL로 접근이 가능합니다.

예 : http://my.myds.me:8080

화면이 나오면 설치 완료입니다.

영문 WordPress를 한글 WordPress로 바꾸기

불행하게도 도커로 워드프레스를 설치하면 한글이 아니라 영문 워드프레스가 설치가 됩니다. 한글을 설정하는 옵션도 없습니다. 하지만 실망하지마세요. 영문 워드프레스를 한글 워드프레스로 변경하는 방법을 아래에 포스팅하도록 하겠습니다.

영문 WordPress를 한글 WordPress로 바꾸기

Similar Posts

  • git사용법과 명령어

    git은 개발자에게는 없어서는 안될 버전관리시스템입니다. SVN이 중앙집중식 버전관리 시스템이라면 git은 분산 버전관리 시스템이라 할 수 있습니다. 경우에 따라 다르겠지만 예전에는 SVN을 많이 사용하던것을 현재는 분산 버전관리 시스템이 git으로 많이 넘어온 상태입니다. 로컬컴퓨터에서만 사용할 경우에는 git만 설치하여 사용하면 되지만 원격저장소를 통해서 여러사람과 사용하기 위해서는 git서버가 있어야 합니다. git서버로 대표적인 사이트는 우리가 흔히 알고 있는 github가 있고 […]

  • 맥북에서 한글전환 버튼의 위치 변경하기

    윈도우를 사용하다가 맥북으로 넘어간 경우 키보드의 배열이 여간 성가신 일이 아닙니다. 그중에서도 한/영 전환키가 정말 성가신대요. 윈도우의 경우 한/영 전환키가 스페이스바 오른쪽에 있지만 맥북은 한/영 전환키가 왼쪽 Tab버튼 위치나 Option + 스페이스바로 전환을 합니다. 그래서 윈도우의 키보드에 익숙한 사람은 무의식 중에 한영을 전환 할 때 스페이스바 오른쪽에 있는 Command버튼을 누르게 되고 짜증이 유발됩니다. 앞으로 줄곧 […]

  • XEICON 아이콘 폰트 사용하기

    아이콘 폰트인 XEICON을 사용하는 방법입니다. 아이콘폰트가 무엇인지 궁금하면 이전에 포스팅한 아이콘 폰트(Icon font) 자유자제로 사용하기를 먼저 읽어 보시는 것을 추천합니다. XEICON XEICON 홈페이지 바로가기 한 시대를 풍미했던 PHP 무료게시판 서비스인 제로보드가 네이버의 서포트를 받으면서 Xpressengine 바뀌었습니다. XEICON은 그 Xpressengine에서 서비스를 제공하고 있는 아이콘 폰트 서비스 입니다. 제공하는 방법과 사용 방법이 폰트어썸 (Font Awesome)과 거의 흡사하여 […]

  • package.json의 종속성을 최신버전으로 업데이트하는 방법

    npm이나 yarn으로 패키지를 추가하게 되면 node_modules폴더에 실제 패키지가 설치되면서 package.json파일에 기록을 하게 됩니다. 일반적으로 npm install 패키지명 –save 이런 명령어를 대부분사용할 텐데요. 그럴경우 package.json의 dependencies와 devDependencies에는 “grunt”: “^1.0.3” 이런식으로 현재 패키지의 최신 버전이 설치가 됩니다. 이렇게 설치된 package.json 파일에 대해 아무리 명령어로 upgrade를 하더라도 해당 버전보다 높은 버전이 설치되지 않습니다. 만약 하려면 일일이 패키지별로 설치를 […]

  • 이미지 하단에 생기는 이상한 공백 없애기

    HTML로 레이아웃을 설정하다보면 DIV태그 안 이나 P태그 안에 이미지가 있는 경우 이미지 하단에 약 1~3px정도의 공백이 생기는 경우를 볼 수 있습니다. 그 공백을 없애려고 이리 찾아보고 저리 찾아봐도 해결이 잘 되지 않는데요. 이것을 없애는 방법을 정리해 보려고 합니다. ▲ 하단에 파란색의 공백이 있음(표시를 위해 백그라운드색을 파란색으로 했음) <div><img src=”https://placeimg.com/400/300/any” /></div> 원인 위와 같이 Image를 DIV나 […]

  • 시놀로지 RAM 4GB에서 18GB로 램업(RAM UP) 했어요

    이번에 시놀로지의 Docker 패키지 가지고 이것 저것하다가 너무 답답해서 RAM 업그레이드를 진행했습니다. 인터넷의 도움을 받고자 이것저것 찾아보고 최종적으로 실제 램업한 결과를 공유해 보고자 합니다. Synology의 DS918+ RAM UP은 얼마까지 가능한가? 제가 가지고 있는 시놀로지는 DS918+ 입니다. 슬롯은 2개가 있고 그 중에 한곳에 4G짜리 RAM이 하나 끼워져있습니다. 사진은 제가 교체하고 찍어서 삼성 RAM이 꽃힌게 보이지만 원래는 […]

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다