gpt4 book ai didi

shell - docker 容器的启动脚本

转载 作者:IT老高 更新时间:2023-10-28 21:22:04 28 4
gpt4 key购买 nike

我有一个 docker 容器已经在运行。我进行了一些配置更改,假设在容器内的/etc/hosts 中添加了一些主机信息。如何保存更改,以便下次打开容器的交互式 shell 时不必再次执行相同的操作?现在我已经在容器中创建了一个迷你脚本 addhosts.sh,如下所示,并且每次都必须运行它。

echo "1.2.3.4 server1.example.com gluster1" >> /etc/hosts
echo "5.6.7.8 server2.example.com gluster2" >> /etc/hosts

这是其中一种情况。同样,我需要我的所有配置都完好无损。请不要建议使用 dockerfile,因为我不是在创建图像,而是我只是进入容器。

最佳答案

您可以通过以下方式提交您所做的更改:

短命令引用:

docker commit <container id or name>  <repository name>/<your image name>:<tage aka version>

例子:

docker commit c3f279d17e0a  svendowideit/testimage:version3

完整引用:

Usage:  docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

Create a new image from a container's changes

Options:
-a, --author string Author (e.g., "John Hannibal Smith <hannibal@a-team.com>")
-c, --change value Apply Dockerfile instruction to the created image (default [])
--help Print usage
-m, --message string Commit message
-p, --pause Pause container during commit (default true)

那么你可以使用docker images提交后查看您的新图像。

要从新镜像运行容器:

docker run -d svendowideit/testimage:version3 <optional startup command>

另一种方法是通过以下方式创建自己的图像:dockerfile ,我只是把它放在这里,以防我们可以帮助别人。

关于shell - docker 容器的启动脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40673964/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com