워드프레스 Synology Container에 설치(1)

워드프레스 Synology 설치 시작

티스토리를 주로 하다가, 워드프레스로 옮기기로 마음을 먹었다. 워드프레스 설치는 초보자에게 굉장히 어려운 일일수도 있다. 호스팅 업체를 통해서 쉽게 받을수 있기도 하지만, 호스팅 비용도 아깝고 항상 사용중인 NAS 를 가지고 있어서 NAS에 설치하기로 한다.

설치 결과

결과는 당연히 성공하였다 . 현재 보고있는 사이트가 워드 프레스로 구동중이다.

워드프레스 Synology Container 설치 성공화면

다만 설치 과정에서 많은 리다이렉트가 발생하는 이슈가 있었다. 아마 그건 마지막쪽에 원인 해결방법을 적을 예정이다.

설치 구성도

Clinet -> Cloudflare -> Synology Webstation -> Docker Container (WordPress)

사용자가 Cloudflare를 통해 Synology를 통해서 Dokcer 컨테이너로 연결되길 원했다.

왜 Cloudflare를 통해서 시놀로지로 연결되는 구조를 사용하였나?

  1. Cloudflare를 ddns로 Synology에서 변경되는 IP를 커버하기 쉽다. (일반적인 가정집에선 IP주소가 간혹 변경된다.)
  2. Free 요금제로도 WordPress에서 사용하기 좋은 캐시 서비스를 제공하며, DDOS 공격등 서버의 안정성을 보장해준다. (해킹, 공격에 대한 대비)
  3. SSL 인증서를 자동으로 갱신하는 오픈소스들이 많아서 https 로 서비스 하기 좋다. 보통은 3개월마다 갱신하던가 까다롭다.

설치과정

프로젝트 생성 (Docker Compose)

  1. Container 실행 및 생성 버튼 클릭(DSM 7.2 기준, 7.1이하는 Docker 이고 설치법이 조금 다릅니다.) 시놀로지 Container에서 프로젝트 생성화면
    docker-compose를 저장할 곳을 설정하고, 해당 경로를 wordpress 홈으로 쓰기로 한다.
    프로젝트 이름 : wordpress (기존것이 있어서 화면은 wordpress2로 찍었다.)
    경로: 안전하다고 생각되는 경로를 root로한다.

  2. Docker-compose.yaml 작성 (만들기 말고 업로드로도 가능)
    https://hub.docker.com/_/wordpress 공식 docker 가이드 참고하여 작성한다.
    직접 사용한 yaml은 맨아래에 첨부하였습니다.

    폴더 구성
    시놀로지 워드프레스 폴더 구성
    주의 사항은 html 영역에 compose.yaml이 들어가게 되면 외부에 노출되어서 비밀번호 탈취의 위험이 있다.

  3. 컨테이너 Webstation 연결
    wordpress의 프로젝트를 webstation으로 연결
    ‘Web Station을 통해 웹 포털 설정’ 을 활성화 해주자.


  4. 시놀로지의 IP : 8080으로 wordpress에 접근 해서 설치가 잘되어 있나 확인한다.

Docker Compose YAML

version: '3.1'

services:

  wordpress:
    image: wordpress
    restart: always
    ports:
      - 8080:80
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wordpress //(변경해서 쓰세요.)
      WORDPRESS_DB_PASSWORD: examplepass //(변경해서 쓰세요.)
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - /volume4/docker/wordpress/html:/var/www/html

  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress //(변경해서 쓰세요.)
      MYSQL_PASSWORD: examplepass //(변경해서 쓰세요.)
      MYSQL_ROOT_PASSWORD: examplepass //(변경해서 쓰세요.)
    volumes:
      - /volume4/docker/wordpress/mysql:/var/lib/mysql

volumes:
  wordpress:
  db:

다음편

  1. Webstation 설정하기
  2. Cloudflare 설정하기

2 thoughts on “워드프레스 Synology Container에 설치(1)”

Leave a Comment