version: '3' services: docmost: image: docmost/docmost:0.2.3 container_name: docmost depends_on: - db - redis environment: - APP_URL=http://127.0.0.1:3000 - APP_SECRET=A_VERY_SECURE_STRING - DATABASE_URL=postgresql://docmost:STRONG_DB_PASSWORD@db:5432/docmost?schema=public - REDIS_URL=redis://redis:6379 # --------- S3 Storage Configuration -------- #- STORAGE_DRIVER=s3 # 'local' is the default; if you use s3 then fill out below env variables #- AWS_S3_ACCESS_KEY_ID=xxx # Your AWS S3 access key ID #- AWS_S3_SECRET_ACCESS_KEY=xxx # Your AWS S3 secret access key #- AWS_S3_REGION=xxx # The region where your S3 bucket is located #- AWS_S3_BUCKET=xxx # The name of your S3 bucket #- AWS_S3_ENDPOINT=xxx # The endpoint URL for your S3 service (optional) # --------- Mail Configuration -------- #- MAIL_DRIVER=smtp #- SMTP_HOST=smtp.gmail.com #- SMTP_PORT=587 #- SMTP_USERNAME=smtpuser #- SMTP_PASSWORD=smtppassword #- MAIL_FROM_ADDRESS=hello@example.com #- MAIL_FROM_NAME=Docmost ports: - 3000:3000 expose: - 3000 restart: unless-stopped volumes: - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/docmost/storage:/app/data/storage #networks: # - proxy #labels: # - traefik.enable=true # - traefik.docker.network=proxy # - traefik.http.routers.docmost.rule=Host(`wiki.example.com`) # - traefik.http.services.docmost.loadbalancer.server.port=3000 # # Optional part for traefik middlewares # - traefik.http.routers.docmost.middlewares=local-ipwhitelist@file db: image: postgres:16-alpine container_name: docmost-db environment: - POSTGRES_DB=docmost - POSTGRES_USER=docmost - POSTGRES_PASSWORD=STRONG_DB_PASSWORD restart: unless-stopped volumes: - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/docmost/database:/var/lib/postgresql/data #networks: # - proxy redis: image: redis:7.2-alpine container_name: docmost-redis restart: unless-stopped volumes: - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/docmost/redis:/data #networks: # - proxy #networks: # proxy: # external: true