65 lines
2.3 KiB
YAML
65 lines
2.3 KiB
YAML
version: "3"
|
|
|
|
networks:
|
|
default:
|
|
external:
|
|
name: ${DOCKER_NETWORK:?DOCKER_NETWORK}
|
|
|
|
services:
|
|
db:
|
|
image: postgres:10.3-alpine
|
|
restart: unless-stopped
|
|
environment:
|
|
POSTGRES_DB: ${POSTGRES_DB:?POSTGRES_DB}
|
|
POSTGRES_USER: ${POSTGRES_USER:?POSTGRES_USER}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?POSTGRES_PASSWORD}
|
|
volumes:
|
|
- ${DOCKER_DATADIR:?DOCKER_DATADIR}/db:/var/lib/postgresql/data
|
|
|
|
server:
|
|
build:
|
|
context: .
|
|
dockerfile: ./pleroma.dockerfile
|
|
restart: unless-stopped
|
|
links:
|
|
- db
|
|
environment:
|
|
POSTGRES_IP: db
|
|
POSTGRES_DB: ${POSTGRES_DB:?POSTGRES_DB}
|
|
POSTGRES_USER: ${POSTGRES_USER:?POSTGRES_USER}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?POSTGRES_PASSWORD}
|
|
|
|
PLEROMA_URL: ${PLEROMA_URL:?PLEROMA_URL}
|
|
PLEROMA_SCHEME: ${PLEROMA_SCHEME:?PLEROMA_SCHEME}
|
|
PLEROMA_PORT: ${PLEROMA_PORT:?PLEROMA_PORT}
|
|
PLEROMA_SECRET_KEY_BASE: ${PLEROMA_SECRET_KEY_BASE:?PLEROMA_SECRET_KEY_BASE}
|
|
PLEROMA_NAME: ${PLEROMA_NAME:?PLEROMA_NAME}
|
|
PLEROMA_ADMIN_EMAIL: ${PLEROMA_ADMIN_EMAIL:?PLEROMA_ADMIN_EMAIL}
|
|
PLEROMA_USER_LIMIT: ${PLEROMA_USER_LIMIT:?PLEROMA_USER_LIMIT}
|
|
PLEROMA_REGISTRATIONS_OPEN: ${PLEROMA_REGISTRATIONS_OPEN:?PLEROMA_REGISTRATIONS_OPEN}
|
|
PLEROMA_MEDIA_PROXY_ENABLED: ${PLEROMA_MEDIA_PROXY_ENABLED:?PLEROMA_MEDIA_PROXY_ENABLED}
|
|
PLEROMA_MEDIA_PROXY_REDIRECT_ON_FAILURE: ${PLEROMA_MEDIA_PROXY_REDIRECT_ON_FAILURE:?PLEROMA_MEDIA_PROXY_REDIRECT_ON_FAILURE}
|
|
PLEROMA_MEDIA_PROXY_URL: ${PLEROMA_MEDIA_PROXY_URL:?PLEROMA_MEDIA_PROXY_URL}
|
|
|
|
PLEROMA_WORKSPACE: /pleroma
|
|
MIX_ARCHIVES: /mix/archives
|
|
MIX_HOME: /mix/home
|
|
MIX_ENV: prod
|
|
volumes:
|
|
- ./pleroma:/pleroma
|
|
- ${DOCKER_DATADIR:?DOCKER_DATADIR}/pleroma:/data
|
|
- ${DOCKER_DATADIR:?DOCKER_DATADIR}/mix:/mix
|
|
- ${DOCKER_DATADIR:?DOCKER_DATADIR}/misc/cache:/root/.cache
|
|
- ${DOCKER_DATADIR:?DOCKER_DATADIR}/misc/meta:/meta
|
|
labels:
|
|
traefik.enable: "true"
|
|
traefik.fe.port: "4000"
|
|
traefik.fe.protocol: "http"
|
|
traefik.fe.entryPoints: "http,https"
|
|
traefik.fe.frontend.rule: "Host:${PLEROMA_URL:?PLEROMA_URL}"
|
|
traefik.cache.port: "80"
|
|
traefik.cache.protocol: "http"
|
|
traefik.cache.entryPoints: "http,https"
|
|
traefik.cache.frontend.rule: "Host:${PLEROMA_MEDIA_PROXY_URL:?PLEROMA_MEDIA_PROXY_URL}"
|
|
|