首页 > 解决方案 > docker-compose.yaml 中环境变量的更改是否需要重新构建?

问题描述

我们有一个 docker-compose.yaml 文件,其中有一个来自 .env.local 的参数 APP_DEBUG,它设置 xdebug 是否处于活动状态:

php-fpm:
    build:
        context: .
        dockerfile: ./docker/php-fpm/Dockerfile
        args:
            - TIMEZONE=Europe/Berlin
            - WITH_XDEBUG=${APP_DEBUG}
    container_name: ${PROJECT_NAME}-php-fpm
    environment:
        XDEBUG_CONFIG: "remote_host=docker.for.mac.localhost remote_connect_back=0 remote_enable=1 remote_autostart=1 remote_port=9009"
        PHP_IDE_CONFIG: "serverName=docker-server"
    working_dir: /var/www
    volumes:
        - .:/var/www:cached
    ports:
        - ${HOST_WEB_PORT}:80

如果我的容器启动并运行并且想要切换 xdebug 或关闭,“停止”和“启动”是否足以让容器对更改做出反应,或者我是否需要执行“向下”和“向上”甚至是新建?

标签: docker-compose

解决方案


构建配置选项在构建时应用。因此,认为您将需要构建映像并再次运行容器。

构建文档


推荐阅读