Created
April 8, 2025 00:50
-
-
Save jonnylink/24a7c6f7ab48b2f8188aa0dde86b725a to your computer and use it in GitHub Desktop.
OnlyOffice docker-compose.yml example (working on Unraid)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| networks: | |
| onlyoffice: | |
| driver: bridge | |
| services: | |
| onlyoffice-mysql-server: | |
| container_name: onlyoffice-mysql-server | |
| image: mysql:8.0.29 | |
| networks: | |
| - onlyoffice | |
| stdin_open: true | |
| tty: true | |
| restart: always | |
| ports: | |
| - "3316:3306" | |
| deploy: | |
| resources: | |
| limits: | |
| memory: 2G | |
| environment: | |
| MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:?} | |
| MYSQL_DATABASE: onlyoffice | |
| MYSQL_CONNECTION_LIMIT: 25 | |
| MYSQL_SERVER_CONN_LIMIT: 50 | |
| volumes: | |
| - /mnt/user/appdata/onlyoffice/mysql/conf.d:/etc/mysql/conf.d | |
| - /mnt/user/appdata/onlyoffice/mysql/data:/var/lib/mysql | |
| - /mnt/user/appdata/onlyoffice/mysql/logs:/var/log/mysql | |
| - /mnt/user/appdata/onlyoffice/mysql/initdb:/docker-entrypoint-initdb.d | |
| onlyoffice-community-server: | |
| container_name: onlyoffice-community-server | |
| image: onlyoffice/communityserver:12.7.1.1942 | |
| depends_on: | |
| - onlyoffice-mysql-server | |
| - onlyoffice-document-server | |
| - onlyoffice-elasticsearch | |
| restart: always | |
| privileged: true | |
| stdin_open: true | |
| tty: true | |
| cgroup: host | |
| networks: | |
| - onlyoffice | |
| ports: | |
| - "8081:80" | |
| - "4431:443" | |
| - "5222:5222" | |
| deploy: | |
| resources: | |
| limits: | |
| memory: 4G | |
| environment: | |
| ONLYOFFICE_CORE_MACHINEKEY: ${ONLYOFFICE_CORE_MACHINEKEY:?} | |
| CONTROL_PANEL_PORT_80_TCP_ADDR: onlyoffice-control-panel | |
| MYSQL_SERVER_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:?} | |
| MYSQL_SERVER_DB_NAME: onlyoffice | |
| MYSQL_SERVER_HOST: onlyoffice-mysql-server | |
| MYSQL_SERVER_USER: onlyoffice_user | |
| MYSQL_SERVER_PASS: ${MYSQL_SERVER_PASS:?} | |
| DOCUMENT_SERVER_PORT_80_TCP_ADDR: onlyoffice-document-server | |
| DOCUMENT_SERVER_JWT_ENABLED: true | |
| DOCUMENT_SERVER_JWT_SECRET: ${DOCUMENT_SERVER_JWT_SECRET:?} | |
| DOCUMENT_SERVER_JWT_HEADER: ${DOCUMENT_SERVER_JWT_HEADER:?} | |
| ELASTICSEARCH_SERVER_HOST: onlyoffice-elasticsearch | |
| ELASTICSEARCH_SERVER_HTTPPORT: 9200 | |
| MAIL_SERVER_API_PORT: 8082 | |
| MAIL_SERVER_API_HOST: onlyoffice-mail-server | |
| MAIL_SERVER_DB_HOST: onlyoffice-mysql-server | |
| MAIL_SERVER_DB_NAME: onlyoffice_mailserver | |
| MAIL_SERVER_DB_USER: mail_admin | |
| MAIL_SERVER_DB_PASS: ${MAIL_SERVER_DB_PASS:?} | |
| volumes: | |
| - /mnt/user/appdata/onlyoffice/CommunityServer/data:/var/www/onlyoffice/Data | |
| - /mnt/user/appdata/onlyoffice/CommunityServer/logs:/var/log/onlyoffice | |
| - /mnt/user/appdata/onlyoffice/CommunityServer/letsencrypt:/etc/letsencrypt | |
| - /mnt/user/appdata/onlyoffice/DocumentServer/data:/var/www/onlyoffice/DocumentServerData | |
| - /sys/fs/cgroup:/sys/fs/cgroup:rw | |
| # - ./certs:/var/www/onlyoffice/Data/certs | |
| healthcheck: | |
| test: ["CMD", "curl", "-f", "http://localhost/healthcheck.ashx"] | |
| interval: 30s | |
| timeout: 10s | |
| retries: 3 | |
| start_period: 120s | |
| onlyoffice-document-server: | |
| container_name: onlyoffice-document-server | |
| image: onlyoffice/documentserver:8.3 | |
| restart: always | |
| stdin_open: true | |
| tty: true | |
| networks: | |
| - onlyoffice | |
| volumes: | |
| - /mnt/user/appdata/onlyoffice/DocumentServer/logs:/var/log/onlyoffice | |
| - /mnt/user/appdata/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data | |
| - /mnt/user/appdata/onlyoffice/DocumentServer/fonts:/usr/share/fonts/truetype/custom | |
| - /mnt/user/appdata/onlyoffice/DocumentServer/forgotten:/var/lib/onlyoffice/documentserver/App_Data/cache/files/forgotten | |
| environment: | |
| - JWT_ENABLED=true | |
| - JWT_SECRET=${DOCUMENT_SERVER_JWT_SECRET:?} | |
| - JWT_HEADER=${DOCUMENT_SERVER_JWT_HEADER:?} | |
| onlyoffice-elasticsearch: | |
| image: onlyoffice/elasticsearch:7.16.3 | |
| container_name: onlyoffice-elasticsearch | |
| restart: always | |
| environment: | |
| - discovery.type=single-node | |
| - bootstrap.memory_lock=true | |
| - "ES_JAVA_OPTS=-Xms1g -Xmx1g -Dlog4j2.formatMsgNoLookups=true" | |
| - "indices.fielddata.cache.size=30%" | |
| - "indices.memory.index_buffer_size=30%" | |
| - "ingest.geoip.downloader.enabled=false" | |
| networks: | |
| - onlyoffice | |
| ulimits: | |
| memlock: | |
| soft: -1 | |
| hard: -1 | |
| nofile: | |
| soft: 65535 | |
| hard: 65535 | |
| volumes: | |
| - /mnt/user/appdata/onlyoffice/ElasticSearch/data:/usr/share/elasticsearch/data | |
| expose: | |
| - "9200" | |
| - "9300" | |
| # onlyoffice-mail-server: | |
| # container_name: onlyoffice-mail-server | |
| # image: onlyoffice/mailserver:1.6.75 | |
| # depends_on: | |
| # - onlyoffice-mysql-server | |
| # hostname: ${MAIL_SERVER_HOSTNAME} | |
| # environment: | |
| # - MYSQL_SERVER=onlyoffice-mysql-server | |
| # - MYSQL_SERVER_PORT=3306 | |
| # - MYSQL_ROOT_USER=root | |
| # - MYSQL_ROOT_PASSWD=${MYSQL_ROOT_PASSWORD:?} | |
| # - MYSQL_SERVER_DB_NAME=onlyoffice_mailserver | |
| # networks: | |
| # - onlyoffice | |
| # restart: always | |
| # privileged: true | |
| # ports: | |
| # - '25:25' | |
| # - '143:143' | |
| # - '587:587' | |
| # - '8082:8081' | |
| # - '3317:3306' | |
| # stdin_open: true | |
| # tty: true | |
| # 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: onlyoffice/controlpanel:3.5.2.530 | |
| # environment: | |
| # ONLYOFFICE_CORE_MACHINEKEY: ${ONLYOFFICE_CORE_MACHINEKEY:?} | |
| # 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 |
Author
jonnylink
commented
Apr 8, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment