多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] > [参考地址](https://github.com/kuaifan/dootask) ## docker-compose.yml ``` version: '3' services: php: container_name: "dootask-php-${APP_ID}" image: "kuaifan/php:swoole-8.0" shm_size: "1024m" volumes: - ./docker/crontab/crontab.conf:/etc/supervisor/conf.d/crontab.conf - ./docker/php/php.conf:/etc/supervisor/conf.d/php.conf - ./docker/php/php.ini:/usr/local/etc/php/php.ini - ./docker/log/supervisor:/var/log/supervisor - ./:/var/www environment: TZ: "Asia/Shanghai" LANG: "C.UTF-8" MODE: "production" MYSQL_HOST: "${DB_HOST}" MYSQL_PORT: "${DB_PORT}" MYSQL_DB_NAME: "${DB_DATABASE}" MYSQL_USERNAME: "${DB_USERNAME}" MYSQL_PASSWORD: "${DB_PASSWORD}" networks: extnetwork: ipv4_address: "${APP_IPPR}.2" depends_on: - redis - mariadb restart: unless-stopped nginx: container_name: "dootask-nginx-${APP_ID}" image: "nginx:alpine" ports: - "${APP_PORT}:80" volumes: - ./docker/nginx:/etc/nginx/conf.d - ./public:/var/www/public environment: TZ: "Asia/Shanghai" networks: extnetwork: ipv4_address: "${APP_IPPR}.3" links: - php - office - fileview restart: unless-stopped redis: container_name: "dootask-redis-${APP_ID}" image: "redis:alpine" environment: TZ: "Asia/Shanghai" networks: extnetwork: ipv4_address: "${APP_IPPR}.4" restart: unless-stopped mariadb: container_name: "dootask-mariadb-${APP_ID}" image: "mariadb" ports: # mysql ports item - "33062:3306" # mysql ports value volumes: - ./docker/mysql/repassword.sh:/etc/mysql/repassword.sh - ./docker/mysql/conf.d:/etc/mysql/conf.d - ./docker/mysql/data:/var/lib/mysql environment: TZ: "Asia/Shanghai" MYSQL_PREFIX: "${DB_PREFIX}" MYSQL_ROOT_PASSWORD: "${DB_ROOT_PASSWORD}" MYSQL_DATABASE: "${DB_DATABASE}" MYSQL_USER: "${DB_USERNAME}" MYSQL_PASSWORD: "${DB_PASSWORD}" networks: extnetwork: ipv4_address: "${APP_IPPR}.5" restart: unless-stopped office: container_name: "dootask-office-${APP_ID}" image: "onlyoffice/documentserver:6.4.2.6" volumes: - ./docker/office/data:/var/www/onlyoffice/Data - ./docker/office/logs:/var/log/onlyoffice - ./docker/office/resources/documenteditor/css/app.css:/var/www/onlyoffice/documentserver/web-apps/apps/documenteditor/main/resources/css/app.css - ./docker/office/resources/presentationeditor/css/app.css:/var/www/onlyoffice/documentserver/web-apps/apps/presentationeditor/main/resources/css/app.css - ./docker/office/resources/spreadsheeteditor/css/app.css:/var/www/onlyoffice/documentserver/web-apps/apps/spreadsheeteditor/main/resources/css/app.css - ./docker/office/resources/documenteditor/mobile/css/app.css:/var/www/onlyoffice/documentserver/web-apps/apps/documenteditor/mobile/css/app.css - ./docker/office/resources/presentationeditor/mobile/css/app.css:/var/www/onlyoffice/documentserver/web-apps/apps/presentationeditor/mobile/css/app.css - ./docker/office/resources/spreadsheeteditor/mobile/css/app.css:/var/www/onlyoffice/documentserver/web-apps/apps/spreadsheeteditor/mobile/css/app.css environment: TZ: "Asia/Shanghai" networks: extnetwork: ipv4_address: "${APP_IPPR}.6" restart: unless-stopped fileview: container_name: "dootask-fileview-${APP_ID}" image: "kuaifan/fileview:4.1.0-SNAPSHOT-RC3" environment: TZ: "Asia/Shanghai" KK_CONTEXT_PATH: "/fileview" networks: extnetwork: ipv4_address: "${APP_IPPR}.7" restart: unless-stopped networks: extnetwork: name: "dootask-networks-${APP_ID}" ipam: config: - subnet: "${APP_IPPR}.0/24" gateway: "${APP_IPPR}.1" ```