• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

docker-compose,容器启动后运行脚本?

docker 来源:Blooze 19次浏览

我有一个服务,我通过码头工作人员通过牧场主进行创作。我遇到的问题是,我需要在部署容器后设置密码。docker-compose,容器启动后运行脚本?

牧场主秘密的工作方式是,我设置了我的秘密,牧场主将用包含我的秘密的文件在我的容器上装入一个卷。我希望能够执行脚本来获取该秘密,并将其设置为我的配置文件的密码。

我不相信我有办法通过Dockerfile获得这个秘密,因为我不想把秘密放在git中,所以我只能通过docker-compose来做这件事。

有谁知道这是可能的吗?


===========解决方案如下:

docker-compose指定如何启动容器,而不是如何修改现有的运行容器。

Rancher documentation提到,对于秘密的默认使用,您可以通过docker-compose.yml中的秘密数组中的名称引用秘密。

目标文件名将与密码的名称相同。
默认情况下,目标文件名将被创建为用户ID和组ID 0,文件模式0444.
在秘密部分中将外部设置为真将确保它知道秘密已经创建。的基本docker-compose.yml

实施例:

version: '2' 
services: 
    web: 
    image: sdelements/lets-chat 
    stdin_open: true 
    secrets: 
    - name-of-secret 
    labels: 
     io.rancher.container.pull_image: always 
secrets: 
    name-of-secret: 
    external: true 

如图所示在 “How to Update a Single Running docker-compose Container”,更新的容器将涉及 “建造,杀死,和向上” 序列。

docker-compose up -d --no-deps --build <service_name> 

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)