글 정리를 위해 Wiki 솔루션을 찾아보다가 우연히 wiki.js 라는 프로젝트를 확인하게 되어 설치를 진행하였다.
설치는 Dcoker-Compose 를 통해서 했고, 참고한 페이지는 공식 문서를 참고함
도커는 제공된 파일을 임의로 볼륨, 연결할 포트 등만 일부 수정하여 진행하였고 자세하게 안내하는 것은 서버에 보안상 문제가 있을 것 같아 기존 코드에 포트만 수정하여 작성했다.
version: "3"
services:
db:
image: postgres:11-alpine
environment:
POSTGRES_DB: wiki
POSTGRES_PASSWORD: wikijsrocks
POSTGRES_USER: wikijs
logging:
driver: "none"
restart: unless-stopped
volumes:
- db-data:/var/lib/postgresql/data
wiki:
image: requarks/wiki:2
depends_on:
- db
environment:
DB_TYPE: postgres
DB_HOST: db
DB_PORT: 5432
DB_USER: wikijs
DB_PASS: wikijsrocks
DB_NAME: wiki
restart: unless-stopped
ports:
- "5678:3000"
volumes:
db-data:
작성 후 docker-compose up -d
커맨드라인을 실행하면 된다.
http용 80번 포트는 다른 용도로 사용하고 있기 때문에 nginx 에서 한번 프록시 하도록 처리하였다.
아래와 같이 내부적으로 5678 포트를 프록시하게 하여 80포트의 도메인과 연결하도록 하였다.
upstream wiki_app {
server 127.0.0.1:5678;
}
server {
listen 443 ssl http2 default;
listen [::]:443 ssl http2 default;
location / {
try_files $uri @wiki_app;
}
location @wiki_app {
include proxy_params;
proxy_pass http://wiki_app;
}
}