Linux 下的 Docker 安装及创建私有仓(二)

26 篇文章 1 订阅
10 篇文章 0 订阅

Linux 下的 Docker 安装及创建私有仓

搭建私有仓库

1、相关目录和文件的的创建,如果目录已存在,无需创建

我这里直接放home目录,无需创建,/docker/registry会自动创建,最终仓库目录:/home/docker/registry

2、拉取私有仓镜像

sudo docker pull registry

注:不带版本默认拉取 latest,如果需要知道版本,请带版本号

sudo docker pull registry:2.1.1

3、创建私有仓

sudo docker run -d -v /home:/var/lib/registry -p 5000:5000 --restart=always --name myregistry registry

带版本号:

sudo docker run -d -v /home:/var/lib/registry -p 5000:5000 --restart=always --name myregistry registry:2.1.1

注:
/home/docker/registry : 私有仓地址
–name myregistry :私有仓名称
–restart=always:自启动

在这里插入图片描述
4、查看信息 docker ps

显示私有仓信息
在这里插入图片描述
浏览器访问:https://192.168.8.25:5000/v2

在这里插入图片描述
私有仓创建成功

私有仓常用命令

停止

 docker stop myregistry

启动

 docker start myregistry

重启

 docker restart myregistry

删除

 docker rm myregistry

设置自启动

docker update --restart=always ccab8da93b75

查看镜像容器

docker ps -a

查看镜像

curl -XGET http://192.168.8.25:5000/v2/_catalog
curl -XGET http://192.168.8.25:5000/v2/myapi/tags/list

推送镜像到私有仓

1、设置自己本地win机器 Docker 镜像仓库 :http://192.168.8.25:5000

{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com"
  ],
  "insecure-registries": [
    "http://192.168.8.25:5000"
  ]
}

2、 标记本地镜像myapi

docker tag myapi 192.168.8.25:5000/myapi

注:不标记无法识别tag,会报错

3、推送到私有仓

docker push 192.168.8.25:5000/myapi

4、查看私有仓镜像信息

服务器运行命令:

curl -XGET http://192.168.8.25:5000/v2/_catalog
curl -XGET http://192.168.8.25:5000/v2/myapi/tags/list

浏览器打开 http://192.168.8.25:5000/v2/_catalog、http://192.168.8.25:5000/v2/myapi/tags/list 也可以

在这里插入图片描述

在这里插入图片描述

镜像推送成功

Linux服务器拉取镜像并运行

1、设置服务器镜仓库

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [ "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com"],
   "insecure-registries": [
    "http://192.168.8.25:5000"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

重新启动完成

2、拉取镜像

docker pull 192.168.8.25:5000/myapi

注:若拉取失败,请检查私有仓是否正常运行,未运行请启动运行

3、运行容器

docker run -d -p 5001:80 --name myservice1 192.168.8.25:5000/myapi

4、查看容器

在这里插入图片描述
5、浏览器启动,访问api http://192.168.8.25:5001/api/product/getall

在这里插入图片描述
顺利获取到信息

完美收工!

下一章,明天继续尝试如何给私有仓加用户名和密码

https://blog.csdn.net/weixin_41003771/article/details/118788131

踩坑记录:

1、私有仓没设置成自启动,docker重启后,私有仓没启动,无法访问
创建私有仓时,一定要 带上 --restart=always

若忘记设置了,请用命令设置(这个命令很难找,资料很少,半天才找到)

docker update --restart=always ccab8da93b75

私有仓未启动时,报错内容:
Get http://192.168.8.25:5000/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

2、insecure-registries 一定要设置
报错内容:
Error response from daemon: Get https://192.168.8.25:5000/v2/: http: server gave HTTP response to HTTPS client

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值