version: "3.9" services: onlyoffice-documentserver: build: context: . container_name: onlyoffice-documentserver depends_on: - onlyoffice-postgresql - onlyoffice-rabbitmq environment: - DB_TYPE=postgres - DB_HOST=onlyoffice-postgresql - DB_PORT=5432 - DB_NAME=onlyoffice - DB_USER=onlyoffice - AMQP_URI=amqp://guest:guest@onlyoffice-rabbitmq # Uncomment strings below to enable the JSON Web Token validation without secrets. #- JWT_ENABLED=true #- JWT_SECRET=secret #- JWT_HEADER=Authorization # Uncomment two strings below to enable the JSON Web Token validation with secret #- JWT_SECTER_FILE=/run/secrets/jwtSecret #- JWT_HEADER_FILE=/run/secrets/jwtHeader #- JWT_IN_BODY=true ports: - '80:80' - '443:443' stdin_open: true restart: always stop_grace_period: 60s volumes: - /var/www/onlyoffice/Data - /var/log/onlyoffice - /var/lib/onlyoffice/documentserver/App_Data/cache/files - /var/www/onlyoffice/documentserver-example/public/files - /usr/share/fonts secrets: - dbUser - dbPass - jwtSecret - jwtHeader onlyoffice-rabbitmq: container_name: onlyoffice-rabbitmq image: rabbitmq restart: always expose: - '5672' onlyoffice-postgresql: container_name: onlyoffice-postgresql image: postgres:9.5 environment: - POSTGRES_DB=onlyoffice - POSTGRES_USER=onlyoffice - POSTGRES_HOST_AUTH_METHOD=trust # NOTE: Comment lines POSTGRES_HOST_AUTH_METHOD and POSTGRES_USER if you want use access with secrets. # Uncomment strings below for use database credentials from secrets. #- POSTGRES_USER_FILE=/run/secrets/dbUser #- POSTGRES_PASSWORD_FILE=/run/secrets/dbPass restart: always expose: - '5432' volumes: - postgresql_data:/var/lib/postgresql secrets: - dbUser - dbPass secrets: dbUser: external: true dbPass: external: true jwtSecret: external: true jwtHeader: external: true volumes: postgresql_data: