services: mongo: container_name: jmalcloud_mongodb image: mongo:7.0 environment: TZ: "Asia/Shanghai" volumes: - ./docker/jmalcloud/mongodb/data/db:/data/db - ./docker/jmalcloud/mongodb/backup:/dump restart: unless-stopped healthcheck: test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] interval: 10s timeout: 5s retries: 3 command: --wiredTigerCacheSizeGB 0.5 jmalcloud: container_name: jmalcloud_server build: context: . dockerfile: Dockerfile.git args: GIT_REPO: https://git.1080p.hk/chenpei/jmalcloud.git GIT_USERNAME: chenpei GIT_PASSWORD: jsjj654321 TARGETPLATFORM: linux/amd64 image: chenpei/jmalcloud:git-latest environment: MONGODB_URI: "mongodb://mongo:27017/jmalcloud" TZ: "Asia/Shanghai" JVM_OPTS: "-Xms512m -Xmx4g" RUN_ENVIRONMENT: "prod" LOG_LEVEL: "warn" EXACT_SEARCH: "false" FILE_MONITOR: "true" FILE_ROOT_DIR: "/jmalcloud/files" TESS4J_DATA_PATH: "/jmalcloud/tess4j/datapath" MONITOR_IGNORE_FILE_PREFIX: ".DS_Store,._" NGRAM_MAX_CONTENT_LENGTH_MB: "5" NGRAM_MIN_SIZE: "2" NGRAM_MAX_SIZE: "6" ENCRYPTION_SECRET_KEY: "" ENCRYPTION_SALT: "" PUID: 0 PGID: 0 volumes: - ./docker/jmalcloud/files:/jmalcloud/files/ restart: unless-stopped ports: - 7072:8088 depends_on: mongo: condition: service_healthy healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8088/public/health"] interval: 30s timeout: 10s retries: 5 start_period: 60s nginx: container_name: jmalcloud_nginx image: jmal/jmalcloud-nginx:latest ports: - 7070:80 - 7071:8089 environment: TZ: "Asia/Shanghai" restart: unless-stopped depends_on: - jmalcloud links: - jmalcloud - office office: # Optional container_name: jmalcloud_office image: onlyoffice/documentserver:9.0 environment: TZ: "Asia/Shanghai" JWT_SECRET: "my_secret" restart: unless-stopped