|
version: '2' |
|
services: |
|
|
|
onlyoffice-communityserver: |
|
container_name: onlyoffice-communityserver |
|
image: onlyoffice/communityserver:latest |
|
environment: |
|
- SSL_CERTIFICATE_PATH=/etc/letsencrypt/live/crm.dlm.crosslab.ru/cert.pem |
|
- SSL_KEY_PATH=/etc/letsencrypt/live/crm.dlm.crosslab.ru/privkey.pem |
|
- LE_RENEW_HOOK=docker restart @CONTAINER_NAME@ |
|
- DOCUMENT_SERVER_PORT_80_TCP_ADDR=document_server |
|
- MAIL_SERVER_DB_HOST=mail_server |
|
depends_on: |
|
- onlyoffice-haproxy |
|
- onlyoffice-mailserver |
|
links: |
|
- onlyoffice-haproxy:document_server |
|
- onlyoffice-mailserver:mail_server |
|
stdin_open: true |
|
restart: always |
|
networks: |
|
- onlyoffice |
|
ports: |
|
- '80:80' |
|
- '443:443' |
|
volumes: |
|
- communityserver_logs:/var/log/onlyoffice |
|
- communityserver_data:/var/www/onlyoffice/Data |
|
- communityserver_db:/var/lib/mysql |
|
- letsencrypt-data:/etc/letsencrypt |
|
- letsencrypt-www:/tmp/letsencrypt |
|
- ./onlyoffice.conf:/etc/nginx/sites-enabled/onlyoffice:ro |
|
|
|
onlyoffice-mailserver: |
|
container_name: onlyoffice-mailserver |
|
image: onlyoffice/mailserver:latest |
|
environment: |
|
- LE_RENEW_HOOK=docker restart @CONTAINER_NAME@ |
|
stdin_open: true |
|
restart: always |
|
hostname: yourdomain.com |
|
privileged: true |
|
networks: |
|
- onlyoffice |
|
ports: |
|
- "25:25" |
|
- "143:143" |
|
- "587:587" |
|
volumes: |
|
- mailserver_logs:/var/log |
|
- mailserver_db:/var/lib/mysql |
|
- mailserver_data:/var/vmail |
|
- ./certs/:/etc/pki/tls/mailserver/ |
|
- letsencrypt-data:/etc/letsencrypt |
|
|
|
onlyoffice-documentserver-data: |
|
container_name: onlyoffice-documentserver-data |
|
image: onlyoffice/documentserver:latest |
|
environment: |
|
- ONLYOFFICE_DATA_CONTAINER=true |
|
- POSTGRESQL_SERVER_HOST=onlyoffice-postgresql |
|
- POSTGRESQL_SERVER_PORT=5432 |
|
- POSTGRESQL_SERVER_DB_NAME=onlyoffice |
|
- POSTGRESQL_SERVER_USER=onlyoffice |
|
- RABBITMQ_SERVER_HOST=onlyoffice-rabbitmq |
|
- RABBITMQ_SERVER_USER=guest |
|
- RABBITMQ_SERVER_PASS=guest |
|
- REDIS_SERVER_HOST=onlyoffice-redis |
|
- REDIS_SERVER_PORT=6379 |
|
stdin_open: true |
|
restart: always |
|
networks: |
|
- onlyoffice |
|
volumes: |
|
- communityserver_data:/var/www/onlyoffice/Data |
|
- communityserver_logs:/var/log/onlyoffice |
|
#- /var/lib/onlyoffice/documentserver/App_Data/cache/files |
|
#- /var/www/onlyoffice/documentserver-example/public/files |
|
#- /usr/share/fonts |
|
|
|
onlyoffice-documentserver: |
|
image: onlyoffice/documentserver:latest |
|
depends_on: |
|
- onlyoffice-documentserver-data |
|
- onlyoffice-postgresql |
|
- onlyoffice-redis |
|
- onlyoffice-rabbitmq |
|
environment: |
|
- ONLYOFFICE_DATA_CONTAINER_HOST=onlyoffice-documentserver-data |
|
- BALANCE=uri depth 3 |
|
- EXCLUDE_PORTS=443 |
|
- HTTP_CHECK=GET /healthcheck |
|
- EXTRA_SETTINGS=http-check expect string true |
|
# Uncomment the string below to redirect HTTP request to HTTPS request. |
|
#- FORCE_SSL=true |
|
stdin_open: true |
|
restart: always |
|
networks: |
|
- onlyoffice |
|
expose: |
|
- '80' |
|
volumes_from: |
|
- onlyoffice-documentserver-data |
|
|
|
onlyoffice-haproxy: |
|
container_name: onlyoffice-haproxy |
|
image: dockercloud/haproxy:1.5.1 |
|
depends_on: |
|
- onlyoffice-documentserver |
|
environment: |
|
- LE_RENEW_HOOK=docker restart @CONTAINER_NAME@ |
|
- MODE=http |
|
# Uncomment the string below to specify the path of ssl certificates |
|
#- CERT_FOLDER=/certs/ |
|
stdin_open: true |
|
links: |
|
- onlyoffice-documentserver |
|
volumes: |
|
- /var/run/docker.sock:/var/run/docker.sock |
|
# Uncomment the string below to map a ssl certificate from host |
|
# to the proxy container |
|
#- /app/onlyoffice/DocumentServer/data/certs/onlyoffice.pem:/certs/cert1.pem |
|
restart: always |
|
networks: |
|
- onlyoffice |
|
ports: |
|
- '180:80' |
|
- '1443:443' |
|
- '1936:1936' |
|
|
|
onlyoffice-redis: |
|
container_name: onlyoffice-redis |
|
image: redis |
|
restart: always |
|
networks: |
|
- onlyoffice |
|
expose: |
|
- '6379' |
|
|
|
onlyoffice-rabbitmq: |
|
container_name: onlyoffice-rabbitmq |
|
image: rabbitmq |
|
restart: always |
|
networks: |
|
- onlyoffice |
|
expose: |
|
- '5672' |
|
|
|
onlyoffice-postgresql: |
|
container_name: onlyoffice-postgresql |
|
image: postgres:9.5 |
|
environment: |
|
- POSTGRES_DB=onlyoffice |
|
- POSTGRES_USER=onlyoffice |
|
networks: |
|
- onlyoffice |
|
restart: always |
|
expose: |
|
- '5432' |
|
volumes: |
|
- documentserver_db:/var/lib/postgresql |
|
|
|
letsencrypt: |
|
restart: always |
|
image: kvaps/letsencrypt-webroot |
|
volumes: |
|
- /var/run/docker.sock:/var/run/docker.sock |
|
- letsencrypt-data:/etc/letsencrypt |
|
- letsencrypt-www:/tmp/letsencrypt |
|
links: |
|
- onlyoffice-communityserver |
|
- onlyoffice-mailserver |
|
environment: |
|
- DOMAINS=yourdomain.com mail.yourdomain.com |
|
- [email protected] |
|
- WEBROOT_PATH=/tmp/letsencrypt |
|
- EXP_LIMIT=30 |
|
- CHECK_FREQ=30 |
|
|
|
networks: |
|
onlyoffice: |
|
driver: 'bridge' |
|
|
|
volumes: |
|
communityserver_db: |
|
communityserver_data: |
|
communityserver_logs: |
|
documentserver_db: |
|
documentserver_data: |
|
documentserver_logs: |
|
mailserver_db: |
|
mailserver_logs: |
|
mailserver_data: |
|
letsencrypt-data: |
|
letsencrypt-www: |