카테고리 없음
Self-host로 구축하는 나만의 Notion 만들기 - 3부. Outline 설치 및 도메인 설정
잌쿠
2025. 6. 13. 06:20
지난 글에서는 Oracle Cloud ARM 인스턴스 생성과 Docker 환경을 준비했습니다.
이번 3부에서는 Outline 설치와 도메인 연결, HTTPS 인증서 적용까지 진행합니다.
1. Outline 설치 준비
mkdir -p ~/outline && cd ~/outline
2. Docker Compose 파일 작성
version: "3.8"
services:
outline-db:
image: postgres:13-alpine
restart: unless-stopped
environment:
POSTGRES_USER: outline
POSTGRES_PASSWORD: outline_password
POSTGRES_DB: outline_db
volumes:
- outline-db-data:/var/lib/postgresql/data
outline-redis:
image: redis:alpine
restart: unless-stopped
volumes:
- outline-redis-data:/data
outline:
image: outlinewiki/outline:latest
depends_on:
- outline-db
- outline-redis
ports:
- "3000:3000"
restart: unless-stopped
environment:
DATABASE_URL: postgres://outline:outline_password@outline-db:5432/outline_db
REDIS_URL: redis://outline-redis:6379
SECRET_KEY: your_random_secret_key
PORT: 3000
volumes:
outline-db-data:
outline-redis-data:
SECRET_KEY는 32자 이상의 랜덤 문자열로 설정하세요.
예: openssl rand -base64 48
3. Docker Compose 실행
docker-compose up -d
http://<서버IP>:3000 에서 Outline 초기 화면 확인 가능
4. 도메인 연결 - DuckDNS 기준
DuckDNS는 무료 동적 DNS 서비스로 개인 서버 IP가 변경되어도 도메인으로 쉽게 접속할 수 있습니다.
- https://www.duckdns.org 에서 회원가입 후 로그인하세요.
- 원하는 서브도메인을 생성합니다. 예: myoutline.duckdns.org
- Oracle Cloud 서버 또는 라우터에서 DuckDNS 업데이트 스크립트를 설정해 IP를 자동 갱신합니다.
예시 스크립트 (Ubuntu 서버):
echo url="https://www.duckdns.org/update?domains=myoutline&token=YOUR_TOKEN&ip=" | curl -k -o ~/duckdns/duck.log -K -
이 스크립트를 크론탭에 등록해 주기적으로 실행하면 됩니다.
- 생성한 myoutline.duckdns.org 도메인으로 접속하세요.
5. HTTPS 적용 (Let's Encrypt + Nginx)
Nginx 설치 및 설정
sudo apt install nginx -y
/etc/nginx/sites-available/outline 파일 생성:
server {
listen 80;
server_name myoutline.duckdns.org;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
sudo ln -s /etc/nginx/sites-available/outline /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
Certbot 설치 및 SSL 발급
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d myoutline.duckdns.org
발급 후 자동으로 Nginx HTTPS 설정이 완료됩니다.
6. 마무리
https://myoutline.duckdns.org 으로 접속해 Outline을 안전하게 이용하세요.