docker向私有仓库push或者pull

最近要从官方仓库下载一个odoo 镜像, 自己电脑下载总是失败, 大家都知道什么原因. 然后我用公司的服务器下载, 速度杠杠的

下载完以后我需要提交到我的私有仓库中, 但是敲下面的命令总是向官方仓库提交. 网上搜索说得修改docker 启动配置, 但是服务器的服务不能随便搞

root@iZ25nfqsujsZ:~# docker push odoo
The push refers to a repository [docker.io/library/odoo]
91b46db41a17: Layer already exists 
01ee0acc0913: Layer already exists 
9f826b75aa40: Layer already exists 
06a5158b6482: Layer already exists 
42619f007c48: Layer already exists 
fcb14e655ddc: Layer already exists 
e603f7d15210: Layer already exists 
a75caa09eb1f: Layer already exists 
unauthorized: authentication required
# 失败

其实修改一下docker 的名字, 在odoo 前面增加你的私有仓库地址, 提交的时候就 没有这个问题了!

# 启动一下立即停止
root@iZ25nfqsujsZ:~# docker run odoo 
root@iZ25nfqsujsZ:~# docker ps -l
CONTAINER ID        IMAGE               COMMAND                 CREATED             STATUS                      PORTS               NAMES
52b2386bf6b7        odoo                "/entrypoint.sh odoo"   30 seconds ago      Exited (0) 19 seconds ago                       cocky_ride
root@iZ25nfqsujsZ:~# docker commit 52b2386bf6 registry.cn-lalala.jiubugaosuni.com/jiubugaosuni/odoo:latest
sha256:547f7896e6af652d549eed1b7846aa58af309a7c286c030d5608e40abd907d96
# 现在提交没问题了
root@iZ25nfqsujsZ:~# docker push registry.cn-lalalala.jiubugaosuni.com/jiubugaosuni/odoo
The push refers to a repository [registry.cn-beijing.jiubugaosuni.com/jiubugaosuni/odoo]
91b46db41a17: Pushed 
01ee0acc0913: Pushed 
9f826b75aa40: Pushed 
06a5158b6482: Pushed 
42619f007c48: Pushed 
fcb14e655ddc: Pushed 
e603f7d15210: Pushed 
a75caa09eb1f: Pushed 
latest: digest: sha256:eeff913ba2228820f9149f6ea5ee92a7033dc0792d4101d29b9e30f81533279b size: 1993

所以说, 私有仓库的镜像命名要注意

Docker 安装私有仓库通常涉及以下几个步骤: 1. **选择私有仓库解决方案**:Docker提供了一种名为`Docker Registry`的官方私有仓库服务,但也有第三方如Nexus、Artifactory等可选。根据需求,你可能选择使用这些服务,或者使用自托管的方式(比如在本地主机或服务器上搭建Registry)。 2. **安装Docker Registry**: - **官方Registry**:如果选择官方,可以使用`docker-registry`镜像,通过`docker run`命令创建一个容器,例如: ``` docker run -d -p 5000:5000 --name my-private-registry registry:2 ``` - **第三方服务**:按照对应软件的文档进行安装,比如Nexus的安装指南会指导你如何配置和启动。 3. **认证和授权**:私有仓库通常需要用户认证才能访问,你可以设置基本认证、OAuth或使用Registry提供的token系统。 4. **推送和拉取镜像**:在本地构建或下载镜像后,使用`docker push`将镜像推送到私有仓库,使用`docker pull`从仓库拉取镜像。 5. **配置Docker客户端**: - 对于Docker CLI,需要在`~/.docker/daemon.json`文件中添加registry配置,如: ```json { "registry-mirrors": ["http://your-private-registry-url:5000"] } ``` - 或者通过环境变量`DOCKER_CONTENT_TRUST=off`来跳过证书验证。 6. **更新镜像仓库设置**:如果你使用的是Dockerfile构建镜像,可以在Dockerfile中添加`--build-arg REGISTRY_URL=http://your-private-registry-url`,以便在构建时指向私有仓库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值