搭建本地私有仓库
添加私有仓库地址并运行
下载registry镜像
[root@localhost ~]# docker pull registry
将私有镜像仓库地址添加到daemon.json中
[root@localhost ~]# vim /etc/docker/daemon.json
{
"insecure-registries": ["192.168.42.17:5000"],
"registry-mirrors": ["https://hfgk9541.mirror.aliyuncs.com"]
}
[root@localhost ~]# systemctl restart docker.service
运行registry容器
[root@localhost ~]# docker run -itd -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest
-itd:表示在容器中打开一个伪终端进行交互操作,并在后台运行
-v:设置挂载
-p:端口映射
-restart=always:重启策略,在容器退出时候总是重启容器
--name registry:创建容器的命名
registry:latest:表示刚刚拉取下来的镜像(也可以直接写镜像名字)
测试私有仓库
[root@localhost ~]# docker tag centos:7 192.168.42.17:5000/centos:v1
#为镜像打标签
错误:
Error response from daemon: No such image: centos:7
表示没有这个镜像,这个时候需要拉取centos:7这个镜像在执行命令
[root@localhost ~]# docker push 192.168.42.17:5000/centos:v1
#将刚打标签的镜像上传到建立的私有仓库中
[root@localhost ~]# curl http://192.168.42.17:5000/v2/_catalog
#列出私有仓库中所有的镜像
后面使用的v2表示docker的版本现在是第二版本,第一版本已经不使用,如果改成v1会报错
[root@localhost ~]# curl http://192.168.42.17:5000/v2/centos/tags/list
#列出私有仓库中centos镜像有哪些标签
[root@localhost ~]# docker rmi -f eeb6ee3f44bd
#删除原有的centos:7的镜像
[root@localhost ~]# docker pull 192.168.42.17:5000/centos:v1
#再次下载测试私有仓库
Harbor
实验环境
| 服务器名 | ip地址 | 需要的软件 |
|---|---|---|
| Harbor服务器 | 192.168.42.17 | docker-ce,docker-compose、harbor-offline-v1.2.2 |
| client服务器 | 192.168.42.15 | docker-ce |
部署docker-compose服务
上传docker-compose到/usr/local/bin/目录下
[root@localhost ~]# chmod +x /usr/local/bin/docker-compose
#给出执行权限
[root@localhost ~]# docker-compose --version
#查看版本号,有表示安装成功
部署Harbor服务
下载Harbor安装程序并解压
[root@localhost ~]# tar zxvf harbor-offline-installer-v1.2.2.tgz -C /usr/local/
#解压到指定的目录
修改harbor安装的配置文件
[root@localhost ~]# vim /usr/local/harbor/harbor.cfg
5 hostname = 192.168.42.17
#将第5行,设置harbor的ip地址或者域名(这边设置ip地址)
59 harbor_admin_password = 1234567
#第59行,指定管理员的出事密码,可以修改也可以默认
启动harbor并查看
[root@localhost ~]# cd /usr/local/harbor/
[root@localhost harbor]# ./prepare
#为harbor的启动生成必要的环境
[root@localhost harbor]# ./install.sh
#拉取并且启动镜像
[root@localhost harbor]# docker-compose ps
创建一个新项目
- 浏览器访问http://192.168.42.17 登录 harbor web ui界面。账户和密码就是之前修改配置文件设置的密码。
- 进入页面后,点击“+项目”按钮
- 在使用docker命令在本地通过127.0.0.1来登录和推送镜像。默认情况下,Registry 服务器在端口 80 上侦听。
[root@localhost harbor]# docker login -u admin -p 1234567 http://127.0.0.1
测试
下载镜像进行测试
[root@localhost harbor]# docker pull nginx
[root@localhost harbor]# docker tag nginx:latest 127.0.0.1/myproject-kgc/nginx:v1
[root@localhost harbor]# docker push 127.0.0.1/myproject-kgc/nginx:v1