envsubst 是一个 Linux 命令行工具,用于替换文本文件中的环境变量。在 Docker 容器中使用 envsubst 可以帮助你在构建或运行容器时处理环境相关的配置。
以下是在 Docker 容器中使用 envsubst 的一些示例:
# template.envDB_HOST=${DB_HOST}DB_PORT=${DB_PORT}使用 envsubst 替换模板文件中的环境变量:# export DB_HOST=localhost# export DB_PORT=3306envsubst < template.env > config.env在 Dockerfile 中使用 envsubst:# 从模板文件创建配置文件COPY template.env .RUN envsubst < template.env > config.env# 使用配置文件COPY config.env /app/config.env在运行 Docker 容器时传递环境变量:docker run -e DB_HOST=localhost -e DB_PORT=3306 your-image或者,你可以在 Docker Compose 文件中设置环境变量:
version: '3'services: your-service: build: context: . dockerfile: Dockerfile environment: - DB_HOST=localhost - DB_PORT=3306通过这些方法,你可以在 Docker 容器中有效地使用 envsubst 来处理环境相关的配置。


