CentOS 7 : Docker私有仓库搭建和使用

系统环境: CentOS 7.2
192.168.0.179:docker仓库
192.168.0.60:客户端

安装并启动docker

yum -y install docker
systemctl start docker
systemctl enable docker

搭建私有仓库

179上下载registry镜像

docker pull registry

防火墙添加运行5000端口

iptables -I INPUT 1 -p tcp --dport 5000 -j ACCEPT

下载完之后我们通过该镜像启动一个容器

docker run -d -p 5000:5000 --privileged=true -v /opt/registry:/tmp/registry registry  

参数说明:
-v /opt/registry:/tmp/registry :默认情况下,会将仓库存放于容器内的/tmp/registry目录下,指定本地目录挂载到容器
–privileged=true :CentOS7中的安全模块selinux把权限禁掉了,参数给容器加特权,不加上传镜像会报权限错误(OSError: [Errno 13] Permission denied: ‘/tmp/registry/repositories/liibrary’)或者(Received unexpected HTTP status: 500 Internal Server Error)错误

客户端上传镜像

修改/etc/sysconfig/docker(Ubuntu下配置文件地址为:/etc/init/docker.conf),增加启动选项(已有参数的在后面追加),之后重启docker,不添加报错,https证书问题。

OPTIONS='--insecure-registry 192.168.0.179:5000'    #CentOS 7系统
other_args='--insecure-registry 192.168.0.179:5000' #CentOS 6系统

因为Docker从1.3.X之后,与docker registry交互默认使用的是https,而此处搭建的私有仓库只提供http服务
在docker公共仓库下载一个镜像

docker pull docker.io/centos

来修改一下该镜像的tag

docker tag centos 192.168.0.179:5000/centos

把打了tag的镜像上传到私有仓库

docker push 192.168.0.179:5000/centos

客户端添加私有仓库地址

# 添加这一行
ADD_REGISTRY='--add-registry 192.168.0.179:5000'

加上后,search镜像,私有仓库和docker hub上都会显示;
不加搜索私有仓库,需要命令中指定私有仓库ip

使用仓库中的镜像

查询私有仓库中的所有镜像,使用docker search命令:

curl -u myuser https://registry_ip:5000/v1/search
curl registry_ip:5000/v1/search
docker search registry_ip:5000/     #centos 7
docker search registry_ip:5000/library #centos 6

查询仓库中指定账户下的镜像,则使用如下命令:

docker search registry_ip:5000/account/

转载请务必保留此出处:http://blog.csdn.net/fgf00/article/details/52040492

  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
### 回答1: 在CentOS 7上安装Docker私有仓库的步骤如下: 1. 首先,确保已经安装了Docker。如果没有安装,请使用以下命令安装: ``` sudo yum install docker ``` 2. 接下来,创建一个目录来存储私有仓库的镜像和数据: ``` sudo mkdir /opt/docker-registry ``` 3. 使用以下命令启动私有仓库容器: ``` sudo docker run -d -p 5000:5000 --name registry \ -v /opt/docker-registry:/var/lib/registry \ registry:2 ``` 此命令将从Docker Hub下载最新版本的Registry镜像,并将其启动在名为“registry”的容器中。容器将在本地端口5000上监听传入的连接,并将所有的镜像和数据存储在“/opt/docker-registry”目录中。 4. 配置Docker客户端以使用私有仓库。在需要使用私有仓库的机器上,编辑或创建“/etc/docker/daemon.json”文件,将以下内容添加到其中: ``` { "insecure-registries": ["myregistrydomain.com:5000"] } ``` 将“myregistrydomain.com”替换为私有仓库的主机名或IP地址。此配置告诉Docker客户端,可以信任指定的私有仓库,允许从该仓库拉取镜像。 5. 重新启动Docker守护程序: ``` sudo systemctl restart docker ``` 现在,您可以将镜像推送到私有仓库中,并从该仓库拉取镜像。例如,要将名为“myimage”的镜像推送到私有仓库,请执行以下命令: ``` sudo docker tag myimage myregistrydomain.com:5000/myimage sudo docker push myregistrydomain.com:5000/myimage ``` 要从私有仓库中拉取该镜像,请使用以下命令: ``` sudo docker pull myregistrydomain.com:5000/myimage ``` ### 回答2: 在CentOS7中安装Docker私有仓库可以按照以下步骤进行: 步骤1:安装Docker 首先,你需要在CentOS7上安装Docker。可以通过执行以下命令来安装最新版本的Docker: ``` sudo yum install docker ``` 步骤2:启动Docker服务 安装完成后,启动Docker服务: ``` sudo systemctl start docker ``` 步骤3:下载Docker私有仓库镜像 接下来,我们需要下载Docker私有仓库镜像。可以通过运行以下命令来下载最新版本的Docker仓库镜像: ``` sudo docker pull registry ``` 步骤4:创建Docker私有仓库容器 下载完镜像后,我们需要创建Docker私有仓库容器。可以运行以下命令: ``` sudo docker run -d -p 5000:5000 --restart=always --name registry registry ``` 这样就创建了一个名为“registry”的Docker私有仓库容器,并将其映射到主机的5000端口。 步骤5:测试私有仓库 现在,我们可以测试私有仓库是否正常工作。可以通过运行以下命令在私有仓库中创建一个映像: ``` sudo docker tag <镜像名> localhost:5000/<镜像名> sudo docker push localhost:5000/<镜像名> ``` 然后,从私有仓库中拉取这个映像: ``` sudo docker pull localhost:5000/<镜像名> ``` 如果能够成功创建和拉取映像,说明Docker私有仓库已经安装并运行成功。 步骤6:设置Docker客户端使用私有仓库 如果你希望在其他机器上访问私有仓库,需要在每个Docker客户端上修改Docker配置文件。打开配置文件`/etc/docker/daemon.json`,添加以下内容: ``` { "insecure-registries" : ["<私有仓库地址>:5000"] } ``` 保存并关闭文件后,重新启动Docker服务: ``` sudo systemctl restart docker ``` 现在,你可以在其他Docker客户端上使用私有仓库了。 这就是在CentOS7中安装Docker私有仓库的步骤。希望对你有所帮助。 ### 回答3: 在CentOS 7中安装Docker私有仓库需要以下步骤: 1. 安装Docker:首先,需要安装Docker Engine,可以使用以下命令进行安装: ``` sudo yum install docker -y ``` 2. 启动Docker服务:安装完成后,启动并激活Docker服务: ``` sudo systemctl start docker sudo systemctl enable docker ``` 3. 创建Docker私有仓库容器:使用以下命令创建并启动Docker私有仓库容器: ``` sudo docker run -d -p 5000:5000 --restart=always --name registry registry:2 ``` 这将在本地主机的5000端口上启动私有仓库容器,并设置自动启动。 4. 配置Docker客户端:为了让Docker客户端能够与私有仓库通信,需要在客户端的Docker配置文件中添加以下内容: ``` sudo vi /etc/docker/daemon.json ``` 在打开的文件中添加以下内容保存并退出: ``` { "insecure-registries" : ["your-registry-domain:5000"] } ``` 将"your-registry-domain"替换为您的主机名或IP地址。 5. 重启Docker服务:在修改Docker配置文件后,重启Docker服务使其生效: ``` sudo systemctl restart docker ``` 至此,在CentOS 7中安装和配置了Docker私有仓库。您可以通过使用Docker命令将镜像推送到私有仓库,并在其他主机上使用仓库进行拉取和部署镜像。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值