version: '3' services: onlyoffice-mysql-server: container_name: onlyoffice-mysql-server image: mysql:5.7.21 environment: - MYSQL_ROOT_PASSWORD=my-secret-pw networks: - onlyoffice stdin_open: true tty: true restart: always volumes: - ./config/mysql/conf.d:/etc/mysql/conf.d - ./config/mysql/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d - mysql_data:/var/lib/mysql onlyoffice-community-server: container_name: onlyoffice-community-server image: onlyoffice4enterprise/communityserver-ee:9.6.3.663 depends_on: - onlyoffice-mysql-server - onlyoffice-document-server - onlyoffice-mail-server environment: - ONLYOFFICE_CORE_MACHINEKEY=core_secret - CONTROL_PANEL_PORT_80_TCP=80 - CONTROL_PANEL_PORT_80_TCP_ADDR=onlyoffice-control-panel - DOCUMENT_SERVER_PORT_80_TCP_ADDR=onlyoffice-document-server - DOCUMENT_SERVER_JWT_ENABLED=true - DOCUMENT_SERVER_JWT_SECRET=jwt_secret - DOCUMENT_SERVER_JWT_HEADER=AuthorizationJwt - MYSQL_SERVER_ROOT_PASSWORD=my-secret-pw - MYSQL_SERVER_DB_NAME=onlyoffice - MYSQL_SERVER_HOST=onlyoffice-mysql-server - MYSQL_SERVER_USER=onlyoffice_user - MYSQL_SERVER_PASS=onlyoffice_pass - MAIL_SERVER_API_PORT=8081 - MAIL_SERVER_API_HOST=onlyoffice-mail-server - MAIL_SERVER_DB_HOST=onlyoffice-mysql-server - MAIL_SERVER_DB_PORT=3306 - MAIL_SERVER_DB_NAME=onlyoffice_mailserver - MAIL_SERVER_DB_USER=onlyoffice_mailserver_user - MAIL_SERVER_DB_PASS=onlyoffice_mailserver_user_pass networks: - onlyoffice ports: - '80:80' - '443:443' - '5222:5222' stdin_open: true tty: true restart: always volumes: - community_data:/var/www/onlyoffice/Data - community_log:/var/log/onlyoffice - document_data:/var/www/onlyoffice/DocumentServerData - ./certs:/var/www/onlyoffice/Data/certs onlyoffice-document-server: container_name: onlyoffice-document-server image: onlyoffice4enterprise/documentserver-ee:5.1.5.59 stdin_open: true tty: true restart: always environment: - JWT_ENABLED=true - JWT_SECRET=jwt_secret - JWT_HEADER=AuthorizationJwt networks: - onlyoffice expose: - '80' - '443' volumes: - document_data:/var/www/onlyoffice/Data - document_log:/var/log/onlyoffice - ./document_fonts:/usr/share/fonts/truetype/custom - document_forgotten:/var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten onlyoffice-mail-server: container_name: onlyoffice-mail-server image: onlyoffice/mailserver:latest depends_on: - onlyoffice-mysql-server hostname: ${MAIL_SERVER_HOSTNAME} environment: - MYSQL_SERVER=onlyoffice-mysql-server - MYSQL_SERVER_PORT=3306 - MYSQL_ROOT_USER=onlyoffice_mailserver_user - MYSQL_ROOT_PASSWD=onlyoffice_mailserver_user_pass - MYSQL_SERVER_DB_NAME=onlyoffice_mailserver networks: - onlyoffice restart: always privileged: true ports: ['25:25','143:143','587:587'] stdin_open: true tty: true expose: - '8081' - '3306' volumes: - mail_data:/var/vmail - mail_certs:/etc/pki/tls/mailserver - mail_log:/var/log onlyoffice-control-panel: container_name: onlyoffice-control-panel depends_on: - onlyoffice-document-server - onlyoffice-mail-server - onlyoffice-community-server image: onlyoffice4enterprise/controlpanel-ee:2.6.0.171 environment: - ONLYOFFICE_CORE_MACHINEKEY=core_secret expose: - '80' - '443' restart: always volumes: - /var/run/docker.sock:/var/run/docker.sock - controlpanel_data:/var/www/onlyoffice/Data - controlpanel_log:/var/log/onlyoffice networks: - onlyoffice stdin_open: true tty: true networks: onlyoffice: driver: 'bridge' volumes: mail_data: mail_certs: mail_log: mail_mysql: document_data: document_log: document_forgotten: community_mysql: community_data: community_log: controlpanel_data: controlpanel_log: mysql_data: