Synology Nas에 Ghost 블로그 올리기 (feat Docker)

Synology Nas에 Ghost 블로그 올리기 (feat Docker)
Photo by Claudio Schwarz / Unsplash

시놀로지에 Ghost 블로그 올려보기~

Ghost??

아 기술 블로그 하나 만들고 싶은데..
나스도 있겠다!! 나스에 개인 블로그 올려보자!!
라는 이유로 어떤 블로그를 만들지.. 생각중이였습니다.

요즘 대세는 사실 고스트 보단 gatsby나 지킬 같은 정적 웹사이트입니다.
또 ghost, gatsby를 둘다 써서 연결하는 경우도 있더라구요.
또 개인 호스팅이 아닌 tistory, github blog 등등의 방법들이 있습니다.

그래도 ghost를 선택한 이유는

  • 일단 제가 나스가 먼저 있습니다.
    • 제 맘대로 서비스 종료, 축소, 변경이 가능합니다.
  • SEO가 잘되어있습니다.
    • 자체 url 변경 등의 기능이 있어서 편해요~
  • 기본적으로 사이트 header, footer html, css, js 등의 코드 추가가 편합니다
    • 사이트 커스텀이 쉽다~

사실 가장 큰 이유는 제가 직접 서버에 올려보고 싶다는 점이이였던것 같습니다

물론 단점도 꽤 있습니다

  • 정보가 다른 것들에 비해 별로 없습니다..
  • 댓글 기능이 힘들어요..
    • 우선 여기에 가입을 하고 나서 달 수 있습니다
    • 전 그래서 그냥 댓글 기능을 없앴습니다.
  • 이미지 사이즈 조정이 안됩니다
    • pro에는 기능이 있다는데..
    • 돈도 비싸고 따로 편집해서 올리는게 편하죠
    • 전 걍 편집도 안하고 올립니다 ㅎㅎ

뭐 그래도 전 나름 만족하면서 사용 중입니다

밑은 시놀로지에 있는 docker만 써서 올리는 방법입니다.
도커 컴포즈 같은걸로 ghost, db를 싸서 올리는 방법도 있지만..
일단 젤 간단한 방법입니다

이미지 다운

synology container manger에서
mysql, ghost 를 받아와줍니다

컨테이너 실행

Mysql

네트워크

brige로

포트 설정

로컬 포트:컨테이너 포트를 설정합니다.

3306:3306

이런식으로 컨테이너 포트는 고정 로컬은 자유롭게 설정하시면 됩니다

볼륨 생성

대충 이런 느낌으로 디렉토리를 만들어줍니다

/docker
`- ghost-db
    |- conf.d
    `- mysql

그리고 각자 만든 디렉토리에 매핑해줍니다

환경

{} 사이는 개인 설정에 맞게 넣어줍니다

MYSQL_ROOT_PASSWORD: {root_password}
MYSQL_DATABASE: {database_name}
MYSQL_USER: {user}
MYSQL_PASSWORD: {password}

그리고 생성

Ghost

네트워크

브릿지로

포트 설정

로컬 포트:컨테이너 포트를 설정합니다.

2368:2368

볼륨 설정

이런식으로 만들어주고요

/docker
`- ghost-blog
    `- content

/var/lib/ghost/content 여기로 매핑해줍니다

환경

database__client: mysql
database__connection__host: {database 주소}
database__connection__port: {database 포트 번호}
database__connection__user: {MYSQL_USER 의 값}
database__connection__password: {MYSQL_PASSWORD 의 값}
database__connection__database: {MYSQL_DATABASE 의 값}
url: {Ghost5 의 주소(https:~.~.~)}

후에 생성

그리고 이 주소로 들어가면 정상적으로 들어가집니다!
{NAS_주소}:2368

혹시 역방향 프록시를 걸어 놓으셨다면.. 안됩니다

제어판 > 로그인포탈 > 고급 > 역방향프록시 에 들어가줍니다

그리고 생성을 눌러서 넣어줍시다

역방향 프록시 세팅할 때 아래와 같이 사용자 지정 머리글을 넣어주시면

외부에서 서브도메인을 이용해 접속할때 제한이 걸리는 부분들

  • DNS접속시 터미널이 열리지 않는다
  • 소켓이 닫혔다
  • 외부에서 ESPHome compile 하기
    들도 해결 가능합니다.

그다음
보안 > 인증서 > 인증서 생성

전 시놀로지 주소라고 한글로 써놨는데
개인 시놀로지 주소 이름.synology.me 이런거 넣어주시면됩니다
아까 역방향 프록시 해놨던 주소랑 동일해야합니다

그리고 완료 하시고
설정에서

이런식으로 바꿔주셔야 됩니다

이러면 끝.

잘 나옵니다

후에
주소/ghost에 들어가서 설정해주시면 됩니다

참고