一、环境准备
1. ip
role | ip |
---|---|
docker仓库机 | 1.1.1.100 |
docker客户机 | 1.1.1.101 |
2. 关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
3. 关闭本地selinux防火墙
sed -i 's/SELINUX=.*/SELINUX=disabled/' /etc/sysconfig/selinux
init 6
二、搭建
1. 搭建仓库 registry
docker pull regsity
2. 基于私有仓库镜像运行容器
docker run -d --name siyou --restart always -p 5000:5000 -v /data/docker/registry:/tmp/registry docker.io/registry
3. 访问私有仓库
# 网上都用这个curl 127.0.0.1:5000/v1/search
,但是报404 page not found
,后查证是v1版本的api查看方式,我们现在的版本是v2,所以用如下方法查看:
>curl -X GET http://1.1.1.100:5000/v2/_catalog
{"repositories":[]} #私有仓库为空,没有提交新镜像到仓库中
4. 为基础镜像打个标签
# 根据 images id 建立 tag
docker tag a374fd62f97f 1.1.1.100:5000/centos
5. 改Docker配置文件制定私有仓库url(这步好像没必要)
vim /etc/sysconfig/docker
OPTIONS='--selinux-enabled --insecure-registry 1.1.1.100:5000'
systemctl restart docker
6. 提交镜像到本地私有仓库中
docker push 1.1.1.100:5000/centos
or
for i in `docker images|grep 1.1.1.100|awk '{print $1}'`;do docker push $i;done
7. 查看私有仓库是否存在对应的镜像
root@localhost ~
> curl -X GET http://1.1.1.100:5000/v2/_catalog
{"repositories":["centos","nginx"]}
> curl -X GET http://1.1.1.100:5000/v2/centos/tags/list
{"name":"centos","tags":["latest"]}
三、在docker客户机验证
1. 修改Docker配置文件
vim /etc/sysconfig/docker
OPTIONS='--selinux-enabled --insecure-registry 1.1.1.100:5000'
systemctl restart docker
2. 从私有仓库中下载已有的镜像
docker pull 1.1.1.100:5000/centos
Using default tag: latest
Trying to pull repository 1.1.1.100:5000/centos ...
latest: Pulling from 1.1.1.100:5000/centos
Digest: sha256:fd9058a6149809b2f4725bb4461294ceebb59e587435f3509c2c8dcc9ee1d5b4
Status: Downloaded newer image for 1.1.1.100:5000/centos:latest
查看
> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
1.1.1.100:5000/centos latest a374fd62f97f 11 weeks ago 194.5 MB
docker.io/centos 6.8 a374fd62f97f 11 weeks ago 194.5 MB
运行
> docker run -itd 1.1.1.100:5000/centos
56c2da2c1e9e70146b71a68f829e89756664f1e2a67abf369baac524c65deb25
> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
56c2da2c1e9e 1.1.1.100:5000/centos "/bin/bash" About a minute ago Up About a minute thirsty_elion
- 自此,docker本地仓库搭建完成。。。
作者:撸大师
链接:http://www.jianshu.com/p/fc36368b5c44
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。