根据当前运行的容器运行一个新的容器
我可以运行一个容器
docker run --name nginx-base -p 81:81 -d nginx
我如何使用这个相同的容器,但运行在端口80,并添加一个卷的链接,如:
docker start nginx-base -p 80:80 -v mydomain:/etc/nginx/site-available/mydomain
您可以使用相同的映像,使用此命令在端口80上启动另一个容器
docker run --name nginx80 -p 80:80 -d nginx
只要你使用不同的端口和名称为你的容器,你可以继续,如
docker run --name nginx83 -p 83:83 -d nginx
考虑一个图像不能更新(我们会忘记docker commit
),但Dockerfile,重新创build更新/修改图像的方式,可以帮助您轻松地创build另一个图像。
如果需要, docker commit
的文档
https://docs.docker.com/engine/reference/commandline/commit/
你可以有一个参考Dockerfile,所以你用这样的命令build立你的图像
docker build -t myuser/myproject:0.1 .
和一个修改的Dockerfile,比如Dockerfile_mod1,然后用这个Dockerfilebuild立另一个图像,
docker build -t myuser/mymodifiedproject:0.12 -f Dockerfile_mod1 .
但你应该有一个Dockerfile,并根据需要经常重build一个修改后的图像。
不,您只能使用docker run
来启动一个新的容器。 当然,还有另一个容器名称。
docker run --name nginx-base -p 80:80 -v mydomain:/etc/nginx/site-available/mydomain -d nginx