我创建了一个数据容器来配合我的Docker镜像(具体来说,是用于存储正在运行的mssql-server-lnux镜像的数据容器),我知道它在我的本地系统上的位置。
我在Docker Hub上新建了一个账户,我认为我想将数据容器推送到hub上。我说“我认为”,因为我不确定这是否是正确的方法:我希望能够从不同的机器上使用数据容器。
如果我到目前为止所说的是正确的方向,那么我该如何将Docker镜像推送到Hub上,并且之后如何访问它?
您无法推送容器,只能推送镜像,这种区别很重要。
镜像类似于您的容器的类,容器本质上是镜像的实例。
因此,如果您想共享您的数据库,则这不是一个好主意 - 您需要先docker commit
,这会变得非常混乱。
但是,如果您只想在不同机器上启动具有新数据容器(最初没有数据)的mysql实例,那么可以推送数据容器镜像。
希望这可以帮助您。
好的,以下是几个步骤。请检查是否有帮助。
首先给你的镜像打标签。假设你的镜像名称为“myapplication”,你的Docker Hub用户名为“dockerhubusername”。
$ docker tag myapplication dockerhubusername/myapplication
使用以下命令登录到Docker Hub。输入用户名“dockerhubusername”,然后输入Docker Hub账户的密码。
$ docker login
现在执行推送命令。
$ docker push dockerhubusername/myapplication
现在,登录到你的Docker Hub并检查是否有镜像。请记住,镜像被推送到类似Docker Hub这样的注册表/仓库中,而不是容器中。
假设您已经标记了您的镜像,
使用docker login配置您的docker hub凭据,并使用docker push将您的镜像推送到dockerhub。
$ docker login
$ docker push dockerhub_username/mssql-server-lnux
如果您还没有标记该镜像,
$ docker tag mssql-server-lnux dockerhub_username/mssql-server-lnux
要稍后访问您的镜像,
$ docker pull dockerhub_username/mssql-server-lnux
参考资料
/var/lib/docker/volumes/…/_data
)被迁移到云卷上,我是否可以在其他机器上创建一个具有相同源的新容器?这样就完全不需要涉及 Docker Hub 了吗? - Manngo