Docker 镜像仓库安装

2021-03-19  本文已影响0人  brightranger

Docker镜像仓库比较多,通用的有github、harbor等,这里我们安装私有的简单仓库 registry,主要因为一是docker官方提供的,二是安装使用都比较简单

1. 环境准备

准备两台安装好的Docker服务器
服务端机器(仓库registry):docker私有仓库服务器,执行registry容器
测试端机器:普通docker服务器,用于测试registry安装是否成功,上传和下载镜像

2. 部署

2.1 下载registry镜像

docker pull registry

2.2 查看下载的registry镜像

docker images

2.3 运行registry容器

docker run -itd -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest

参数说明:
-itd:在容器中打开一个伪终端进行交互操作,并在后台运行;
-v:把宿主机的/data/registry目录绑定 到 容器/var/lib/registry目录(这个目录是registry容器中存放镜像文件的目录),来实现数据的持久化
-p:映射端口;访问宿主机的5000端口就访问到registry容器的服务了
--restart=always:这是重启的策略,假如这个容器异常退出会自动重启容器
--name registry:创建容器命名为registry,你可以随便命名
registry:latest:这个是刚才pull下来的镜像

2.4 查看当前仓库中所有镜像

curl http://127.0.0.1:5000/v2/_catalog

3. 测试镜像仓库

3.1 修改镜像源并重启docker服务

vim /etc/docker/daemon.json

{
  "registry-mirrors": [ "https://registry.docker-cn.com"]
}

如果没有deamon.json文件,则仓库
重启docker

systemctl restart docker

3.2 下载busybox镜像

[root@localhost docker]# docker pull busybox
[root@localhost docker]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
busybox             latest              f6e427c148a7        36 hours ago        1.15MB

3.3 为镜像加标签

[root@localhost docker]# docker tag busybox:latest  172.18.18.90:5000/busybox:v1

3.4 上传到镜像服务器仓库

[root@localhost docker]# docker push 10.10.205.83:5000/busybox:v1 
The push refers to repository [10.10.205.83:5000/busybox]
Get https://10.10.205.83:5000/v2/: http: server gave HTTP response to HTTPS client

注意了,这是报错了,需要https的方法才能上传,我们可以修改下daemon.json来解决:

3.5 修改deamon.json(使支持https)

[root@localhost docker]# vi /etc/docker/daemon.json 
{
  "registry-mirrors": [ "https://registry.docker-cn.com"],
  "insecure-registries": [ "10.10.205.83:5000"]
}

3.6 重启docker

[root@localhost docker]# systemctl  restart docker

3.7 再次上传

[root@localhost docker]# docker push 10.10.205.83:5000/busybox:v1 

从结果看,就已经上传成功

3.8 下载上传的镜像

删除本地对应的镜像

docker rmi 10.10.205.83:5000/busybox:v1
docker rmi busybox

查看镜像

docker images

下载镜像

[root@localhost docker]# docker pull 10.10.205.83:5000/busybox:v1

查看镜像

docker images
上一篇下一篇

猜你喜欢

热点阅读