您的位置:首页 > 运维架构 > Docker

docker本地仓库的搭建

2016-12-10 18:44 381 查看
一、先说两句

为了实现这个功能,尝试了网上各种解决方案,无数次失败中,终于成功了,并不得不说,实践是检验真理的唯一标准!!!

二、docker本地仓库搭建

1.准备阶段

1.1查看你的内核

[root@cgsl ]# uname -r
我的内核是3.10.0 -229(最后完成整个部署之后成了3.10.0-327)


1.2更新yum

[root@cgsl ]# yum update


1.3安装httpd(docker 本地进行push,pull是通过http协议的,要保证你的电脑有http协议)

[root@cgsl ]# yum install httpd
[root@cgsl ]# service httpd start


1.4启动之后测试一下,在浏览器里输入主机地址,看到下面的图片恭喜你启动成功。centos里查看ip地址(
[root@cgsl ]# ifconfig




1.5激活你的网卡

[root@cgsl ]# vi /etc/sysconfig/network-scripts/ifcfg-ens3
修改此行
ONBOOT=yes
# /etc/init.d/network restart


1.6关闭防火墙

关闭本地防火墙
[root@cgsl ]# systemctl stop firewalld.service
关闭本地selinux防火墙
[root@cgsl ]# vi /etc/sysconfig/selinux
修改此行
SELINUX=disabled
# setenforce 0


1.7 添加docker.repo文件

[root@cgsl ]# vi  /etc/yum.repos.d/docker.repo
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg


1.8 解决docker push http 问题(Docker从1.3.X之后默认docker registry使用的是https,所以当用docker pull命令下载远程镜像时,如果远程docker registry是非https的时候就会报错误。)

[root@cgsl ]# vi /etc/sysconfig/docker
OPTIONS='--selinux-enabled --insecure-registry 172.22.22.222:5000'
其中--insecure-registry 192.168.2.75:5000是自己添加的。


2.部署本地仓库阶段

2.1开启docker服务

[root@cgsl ]# service docker start
[root@cgsl ]# docker images


2.2下载registry,并启动,通过-v参数将镜像文件放在指定的本机路径下

[root@cgsl ]# sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry


2.3查看本地有哪些镜像

[root@cgsl ]# curl -X GET http://172.22.22.222:5000/v2/_catalog[/code] 
2.4上传镜像

[root@cgsl ]# docker tag cgls/hello-world 172.22.22.222:5000/hello-world
[root@cgsl ]# docker push 172.22.22.222:5000/hello-world


2.5删除docker里的172.22.22.222:5000/hello-world镜像,本地重新获取

[root@cgsl ]# docker pull 172.22.22.222:5000/hello-world


好了今天先到这里,明天我们进行两机互传。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: