Git 如何导入导出docker组件?
我对docker和所有容器方面还是新手。 我有完全访问服务器在 1.1.1.1我在那里安装了docker。(不带docker compose) 在另一个地方,我的朋友有服务器2.2.2.2,他在那里安装了docker和docker compose 在2.2.2.2服务器上,我的朋友构建了3个容器:容器A(Git)、容器B(未知)、容器C(未知)。 我可以通过浏览器访问容器A(Git)的内容 我的问题是:我可以将容器A导入1.1.1.1中的服务器吗?我有用户权限下载Git,但我想要的是导入容器,而不是Git(容器内的内容)。Git 如何导入导出docker组件?,git,docker,docker-compose,containers,Git,Docker,Docker Compose,Containers,我对docker和所有容器方面还是新手。 我有完全访问服务器在 1.1.1.1我在那里安装了docker。(不带docker compose) 在另一个地方,我的朋友有服务器2.2.2.2,他在那里安装了docker和docker compose 在2.2.2.2服务器上,我的朋友构建了3个容器:容器A(Git)、容器B(未知)、容器C(未知)。 我可以通过浏览器访问容器A(Git)的内容 我的问题是:我可以将容器A导入1.1.1.1中的服务器吗?我有用户权限下载Git,但我想要的是导入容器,而
有什么提示吗?我该怎么办?或者,如果我没有访问命令控制台的权限,这是不可能做到的 否。如果您希望拥有用于运行容器A(Git)的映像,那么您的朋友必须将Docker映像推送到Docker注册表。这将使您能够在服务器上运行与Docker容器相同的Docker映像。但不是数据 Docker图像在设计上是不可变的。启动的Docker映像称为Docker容器。基本上,如果您停止并删除Docker容器,它们将被完全删除。例如,如果您有要保存的数据,则可以使用所谓的
绑定卷
你看,你的问题很广泛。有很多方法可以实现您想要的,但我只能向您指出一些文档来进一步说明。或者你也可以参加当地的聚会,这将是最快的上船方式
运行中的容器可以导出到tar归档中,tar归档可以复制到不同的机器上,然后再导入回来 在运行容器的机器上,执行以下操作:
docker export --output "A.tar" <container-A>
docker导出——输出“A.tar”
接下来,将生成的归档文件A.tar复制到您的计算机上,并将其导入:
docker import A.tar <container-A-image>
docker导入A.tar
这将在您的计算机上创建一个映像,然后可以使用
docker run…
启动该映像。如果您想移动正在运行的容器实例,我建议您运行以下命令
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS NAMES
c3f279d17e0a ubuntu:12.04 /bin/bash 7 days ago Up 25 hours desperate_dubinsky
197387f1b436 ubuntu:12.04 /bin/bash 7 days ago Up 25 hours focused_hamilton
$ docker commit c3f279d17e0a svendowideit/testimage:version3
这将在主机上创建映像,然后运行下面的命令将映像另存为tar文件,以便将其上载到另一台主机
$ docker save -o testimage.tar svendowideit/testimage:version3
在将tar映像复制到另一台主机上时,运行以下命令提取tar并将其保存为docker映像
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
$ docker load --input testimage.tar
Loaded image: svendowideit/testimage:version3
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
svendowideit/testimage version3 769b9341d937 7 weeks ago 2.489 MB
现在,您可以使用docker run命令调出已保存图像的docker实例。亲爱的@kleinsasserm非常感谢您的见解。理解。正如我从搜索和学习中所想的那样,如果我的朋友不推送或分享图片,那是不可能的。非常感谢。亲爱的@Viswens非常感谢。这很有帮助。谢谢你的指导。还有一个问题,如果我想保存docker映像,我应该停止docker服务吗?如果docker运行时正常,它会对使用它的人产生影响吗?(例如变慢或什么?)我们可以在不停止Docker的情况下安全运行Docker save,但要确保新Docker提供了新装载的卷或环境;例如,您在MySQL数据库上保存了Docker,那么MySQL数据应该装载在主机上;对于即将推出MySQL的新Docker来说,它应该使用新的卷目录,以便从头开始创建内容。所以,这取决于它是什么,以及你计划如何开发你的IaaS。明白了。。。非常感谢ear@yamenk非常感谢。如果我在容器A中导出,我应该停止docker服务吗?或者即使docker正在运行也可以导出?导出时容器可以正在运行。不需要停止服务。