Docker 具有私有存储库的本地 CE:可能吗?
Docker CE on premises with private repository: possible?
我想知道是否可以在本地使用私有存储库设置 Docker CE(使用 DTR 引擎或其他替代方案(如果存在))?我的公司有一些严格的规定,不能在云端存储任何东西...
我知道这对于 EE 版本是可能的,但我想从 CE 版本开始几个月,看看它是否适用于我们的环境。
我想你要找的是
docker run -d -p 5000:5000 --restart=always --name registry registry:2
您的问题分为两部分:
- 部署注册表本身
- 配置 docker 引擎实例以访问注册表
要部署注册表,您需要做的就是按照@sony vizio 的回答并在此处概述进行部署 https://docs.docker.com/registry/deploying/#run-a-local-registry
docker run -d -p 5000:5000 --restart=always --name registry registry:2
要配置您的 docker 引擎以访问此注册表,您需要将 insecture-registries
添加到 /etc/docker/daemon.json
(前提是上述部署发生在主机 registry
上):
{
"insecure-registries": ["registry:5000"]
}
您推送到本地注册表的图像需要使用注册表标记 host:port
:
docker tag myimage registry:5000/myimage
docker push registry:5000/myimage
然后在其他地方
docker run registry:5000/myimage
我想知道是否可以在本地使用私有存储库设置 Docker CE(使用 DTR 引擎或其他替代方案(如果存在))?我的公司有一些严格的规定,不能在云端存储任何东西...
我知道这对于 EE 版本是可能的,但我想从 CE 版本开始几个月,看看它是否适用于我们的环境。
我想你要找的是
docker run -d -p 5000:5000 --restart=always --name registry registry:2
您的问题分为两部分:
- 部署注册表本身
- 配置 docker 引擎实例以访问注册表
要部署注册表,您需要做的就是按照@sony vizio 的回答并在此处概述进行部署 https://docs.docker.com/registry/deploying/#run-a-local-registry
docker run -d -p 5000:5000 --restart=always --name registry registry:2
要配置您的 docker 引擎以访问此注册表,您需要将 insecture-registries
添加到 /etc/docker/daemon.json
(前提是上述部署发生在主机 registry
上):
{
"insecure-registries": ["registry:5000"]
}
您推送到本地注册表的图像需要使用注册表标记 host:port
:
docker tag myimage registry:5000/myimage
docker push registry:5000/myimage
然后在其他地方
docker run registry:5000/myimage