【问题标题】:Inject configuration into volume before Docker container starts在 Docker 容器启动之前将配置注入卷中
【发布时间】:2017-11-29 18:47:05
【问题描述】:

我正在寻找一种方法来创建 Docker 卷并在特定容器启动之前将一些数据放入其中 - 这需要在启动时进行配置。

我不想修改容器。我想直接使用 Docker Hub 中的 vanilla 容器。

有什么想法吗?

更新

我没有提到所有这些都必须在撰写文件中完成。如果我手动完成,我可以等待配置注入容器完成。

【问题讨论】:

  • 你能澄清一下这里的具体问题吗?这里的直线方法是将您想要的所有文件整理到主机目录中,然后使用 -v 标志将其挂载到您的容器中。
  • 谢谢!我更新了我的问题。

标签: docker configuration docker-compose docker-volume


【解决方案1】:

绝对!只需事先创建您的卷,将其附加到任何容器(像 Ubuntu 这样的基本操作系统会很好用),添加您的数据,然后就可以开始了!

创建卷:

docker volume create test_volume

将其附加到可以添加数据的实例:

docker run --rm -it --name ubuntu_1 -v test_volume:/app ubuntu /bin/sh

添加一些数据:

在容器内执行此操作;您从上一个命令中进入。 触摸 /app/my_file

退出容器:

exit

将卷附加到新容器:

当然,将ubuntu 替换为您的真实图像名称。

docker run --rm -it --name ubuntu_2 -v test_volume:/app ubuntu /bin/sh

验证数据是否存在:

~> ls app/
   my_file

【讨论】:

  • @eventhorizo​​n 您将无法在作曲家文件中创建和播种卷;但是您可以事先创建并播种它,然后在撰写文件中附加它。请记住,撰写文件中的卷名可能有前缀。
猜你喜欢
  • 1970-01-01
  • 2015-10-23
  • 2020-11-11
  • 2021-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多