97 lines
2.3 KiB
Markdown
97 lines
2.3 KiB
Markdown
Portainer Stack:
|
|
```yaml
|
|
---
|
|
# DO NOT EDIT
|
|
# The .env file has everything you need to edit.
|
|
# Run options:
|
|
# 1. Use prebuilt images (preferred method):
|
|
# run cmd: docker-compose up -d
|
|
# 2. Build images on your own machine:
|
|
# build cmd: COMPOSE_DOCKER_CLI_BUILD=1 DOCKER_BUILDKIT=1 docker-compose build
|
|
# run cmd: docker-compose up -d
|
|
|
|
version: "3.9"
|
|
services:
|
|
proxy:
|
|
image: reallibrephotos/librephotos-proxy:${tag}
|
|
container_name: proxy
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ${myPhotos}:/data
|
|
- ${data}/protected_media:/protected_media
|
|
ports:
|
|
- ${httpPort}:80
|
|
depends_on:
|
|
- backend
|
|
- frontend
|
|
|
|
db:
|
|
image: postgres:13
|
|
container_name: db
|
|
restart: unless-stopped
|
|
environment:
|
|
- POSTGRES_USER=${dbUser}
|
|
- POSTGRES_PASSWORD=${dbPass}
|
|
- POSTGRES_DB=${dbName}
|
|
volumes:
|
|
- ${data}/db:/var/lib/postgresql/data
|
|
command: postgres -c fsync=off -c synchronous_commit=off -c full_page_writes=off -c random_page_cost=1.0
|
|
|
|
frontend:
|
|
image: reallibrephotos/librephotos-frontend:${tag}
|
|
container_name: frontend
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- backend
|
|
|
|
backend:
|
|
image: reallibrephotos/librephotos:${tag}
|
|
container_name: backend
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ${myPhotos}:/data
|
|
- ${data}/protected_media:/protected_media
|
|
- ${data}/logs:/logs
|
|
- ${data}/cache:/root/.cache
|
|
|
|
environment:
|
|
- SECRET_KEY=${shhhhKey}
|
|
- BACKEND_HOST=backend
|
|
- ADMIN_EMAIL=${adminEmail}
|
|
- ADMIN_USERNAME=${userName}
|
|
- ADMIN_PASSWORD=${userPass}
|
|
- DB_BACKEND=postgresql
|
|
- DB_NAME=${dbName}
|
|
- DB_USER=${dbUser}
|
|
- DB_PASS=${dbPass}
|
|
- DB_HOST=${dbHost}
|
|
- DB_PORT=5432
|
|
- REDIS_HOST=redis
|
|
- REDIS_PORT=6379
|
|
- MAPBOX_API_KEY=${mapApiKey}
|
|
- WEB_CONCURRENCY=${gunniWorkers}
|
|
- SKIP_PATTERNS=${skipPatterns}
|
|
- ALLOW_UPLOAD=${allowUpload}
|
|
- DEBUG=0
|
|
- HEAVYWEIGHT_PROCESS=${HEAVYWEIGHT_PROCESS}
|
|
|
|
# Wait for Postgres
|
|
depends_on:
|
|
- db
|
|
|
|
redis:
|
|
image: redis:6
|
|
container_name: redis
|
|
restart: unless-stopped
|
|
```
|
|
|
|
Environments:
|
|
```
|
|
TAG=latest
|
|
RST=unless-stopped
|
|
NET=bridge
|
|
PUID=${PUID-1000}
|
|
PGID=${PGID-1000}
|
|
TZ=${TZ-Europe/Amsterdam}
|
|
AutoUpdate=true
|
|
``` |