joplock/docker-compose.example-full-build.yml

67 lines
1.8 KiB
YAML

# Full-stack development example: Postgres + Joplin Server + Joplock (built from source)
#
# Same as docker-compose.example-full.yml but builds Joplock from source
# instead of pulling the pre-built image.
#
# Usage:
# docker compose -f docker-compose.example-full-build.yml up -d --build
#
# Joplock UI: http://localhost:5444
# Joplin Server: internal only (not exposed to host by default)
services:
db:
image: postgres:16
restart: unless-stopped
environment:
POSTGRES_USER: joplin
POSTGRES_PASSWORD: joplin
POSTGRES_DB: joplin
volumes:
- db_data:/var/lib/postgresql/data
server:
image: joplin/server:latest
restart: unless-stopped
depends_on:
- db
environment:
APP_PORT: 22300
APP_BASE_URL: http://server:22300
SIGNUP_ENABLED: 'true'
DB_CLIENT: pg
POSTGRES_HOST: db
POSTGRES_PORT: 5432
POSTGRES_DATABASE: joplin
POSTGRES_USER: joplin
POSTGRES_PASSWORD: joplin
joplock:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
depends_on:
- server
ports:
- '5444:3001'
environment:
HOST: 0.0.0.0
PORT: 3001
JOPLOCK_PUBLIC_BASE_URL: http://localhost:5444
JOPLIN_SERVER_ORIGIN: http://server:22300
JOPLIN_SERVER_PUBLIC_URL: http://server:22300
POSTGRES_HOST: db
POSTGRES_PORT: 5432
POSTGRES_DATABASE: joplin
POSTGRES_USER: joplin
POSTGRES_PASSWORD: joplin
# Create or reset Admin account in Joplin Server — optional,
# set to enable the admin panel or change admin password
# also can be used to turn off MFA if lost
JOPLOCK_ADMIN_EMAIL: ''
JOPLOCK_ADMIN_PASSWORD: ''
IGNORE_ADMIN_MFA: 'false'
volumes:
db_data: