You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

docker-compose.yml报environment字段类型无效无法启动求助

你的Compose文件存在多处YAML语法及配置规则错误,按优先级修正如下:

  • 触发environment字段非法类型报错的直接原因:YAML数组格式要求短横线-后必须加空格,你所有环境变量的-后都没有空格,导致YAML解析器将整个environment字段识别为单个字符串,而非数组,触发类型校验错误。
  • 语法错误2:wowonder-web服务的volumes配置多写了一个冒号,宿主机路径和容器路径只能用1个冒号分隔,原配置/opt/wowonder/app:/appwowonder:/app属于非法格式,按常规需求调整为/opt/wowonder/app:/app即可。
  • 语法错误3:wowonder-db服务的command字段缩进错误,目前缩进到了volumes字段的子级,需调整为和environment、volumes同级。
  • 配置错误1:内容里的"是HTML转义编码错误,要替换为正常双引号,环境变量值无特殊字符时也可以直接省略引号。
  • 配置错误2:MariaDB默认数据存储目录为/var/lib/mysql,你配置的/var/lib/mysqldb路径错误,会导致数据无法持久化。

修正后的完整配置如下:

---
version: '3.5'
services:
    wowonder-web:
        container_name: wowonder-web
        image: webdevops/php-apache:debian-10
        environment:
            - WEB_DOCUMENT_ROOT=/app
            - PHP_MEMORY_LIMIT=1024M
            - PHP_MAX_EXECUTION_TIME=7200
            - PHP_POST_MAX_SIZE=10240M
            - PHP_UPLOAD_MAX_FILESIZE=10240M
            - FPM_MAX_REQUESTS=500
            - FPM_PM_MAX_CHILDREN=20
            - FPM_PM_START_SERVERS=10
            - FPM_PM_MIN_SPARE_SERVERS=5
            - FPM_PM_MAX_SPARE_SERVERS=15
        volumes: 
            - /opt/wowonder/app:/app
        restart: unless-stopped

    wowonder-db:
        container_name: wowonder-db
        image: mariadb
        environment: 
            - MYSQL_ROOT_PASSWORD="wowonder"
            - MYSQL_PASSWORD="wowonder"
            - MYSQL_DATABASE="wowonder"
            - MYSQL_USER="wowonder"
        volumes: 
            - /docker/Databases/wowonder:/var/lib/mysql
        command: --sql-mode="NO_ENGINE_SUBSTITUTION"  
        restart: unless-stopped 

networks:
    default:
        external:
            name: imlala

内容的提问来源于stack exchange,提问作者Orange Training

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 01:54:03