Uda*_*rma 5 configuration-management continuous-deployment docker devops
目前,我有配置文件存储在GitHub中。我有如下格式单一的JSON文件
{
DEV:
{ key1 : val1, key2 : val2 },
PROD:
{ key1 : val1, key2 : val2 }
}。
我的构建系统克隆了git repo,构建了项目并创建了Docker映像,并将其存储在私有Docker注册表中。我将jar文件和配置文件复制到Docker映像中。每当我启动一个容器时,我都会注入一个环境变量(ENV = DEV / PROD),我的代码将使用该变量读取基于环境的配置。
我在这里有几个问题:
维护特定于环境的配置的最佳方法是什么?
配置文件可能包含敏感数据,例如api密钥和机密信息,在构建Docker映像时如何加密,存储和解密?
使用 docker-compose。它允许完美的机制 - 您在这里实际请求的机制,例如docker-compose.yml:
version: "2"
services:
server:
hostname: server
container_name: server
image: serverBla
build: ./server
env_file:
- ./config/config.env
Run Code Online (Sandbox Code Playgroud)该文件./config/config.env是您的“动态”配置。您只需重新创建容器即可刷新应用程序内的值。据我所知 docker-compose 可以很好地处理你提到的任何内容。
| 归档时间: |
|
| 查看次数: |
1180 次 |
| 最近记录: |