compose

docker compose command 执行脚本,无法获取环境变量

在 docker-compose.yml 中使用 command: bash -c "sh /start.sh" 时,环境变量无法正确加载,可能是因为 .env 文件中的环境变量并没有被传递到容器内的 bash 命令执行环境中。默认情况下,docker-compose 会加载 .env 文件中的环境变量,并传递给容器,但在 command 中直接执行时,这些变量可能没有被传递到子进程。

docker compose env_file的用法

在 docker-compose.yml 文件中,env_file 属性用于指定一个或多个环境变量文件,这些文件中的变量将会被加载到容器的环境中,供容器内的应用程序使用。env_file 文件通常是一个简单的文本文件,包含键值对格式的环境变量定义(如 .env 文件)。