如何在 Docker 中加载外部配置文件?
How to load external config file in Docker?
我正在使用 Docker 构建 Node 应用程序映像。我的配置位于 source_folder/config.yaml
.
的 YAML 文件中
在我的 index
文件中执行 await readFile(new URL('../config.yaml', import.meta.url), 'utf8')
时,它说 运行 之后找不到文件。但是,在 Dockerfile
中执行 - COPY config.yaml ./
可以解决问题,但我不想在映像构建中复制我的凭据。
有什么解决方案可以在构建镜像后加载配置文件吗?
使用 ESM。
我使用 dotenv
加载我的环境变量。我理解不需要将它包含在构建中。 Docker 通过将文件作为参数传递来提供将这些变量包含到您的环境中的运行时解决方案。所以这就是我在使用 docker run
:
时加载环境的方法
docker run -e VARIABLE_NAME=variable_value image_to_be_executed
# or
docker run --env-file path_to_env_file image_to_be_executed
我正在使用 Docker 构建 Node 应用程序映像。我的配置位于 source_folder/config.yaml
.
在我的 index
文件中执行 await readFile(new URL('../config.yaml', import.meta.url), 'utf8')
时,它说 运行 之后找不到文件。但是,在 Dockerfile
中执行 - COPY config.yaml ./
可以解决问题,但我不想在映像构建中复制我的凭据。
有什么解决方案可以在构建镜像后加载配置文件吗?
使用 ESM。
我使用 dotenv
加载我的环境变量。我理解不需要将它包含在构建中。 Docker 通过将文件作为参数传递来提供将这些变量包含到您的环境中的运行时解决方案。所以这就是我在使用 docker run
:
docker run -e VARIABLE_NAME=variable_value image_to_be_executed
# or
docker run --env-file path_to_env_file image_to_be_executed