Linux下如何配置docker的本地仓库
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,这篇文章主要介绍了Linux下如何配置docker的本地仓库,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一,本地安装# yum in
千家信息网最后更新 2025年01月31日Linux下如何配置docker的本地仓库
这篇文章主要介绍了Linux下如何配置docker的本地仓库,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
一,本地安装
# yum install -y python-devel libevent-devel python-pip gcc xz-devel# pip install docker-registry
也可以从 docker-registry (https://github.com/docker/docker-registry)项目下载源码进行安装。
二,使用官方 registry 镜像
# docker run -d -p 5000:5000 registry #将使用官方的 registry 镜像来启动本地的私有仓库,但是并没有启动,只是为你创建好
默认情况下,会将仓库存放于容器的 /tmp/registry 目录下,如果容器被删除,则数据也会丢失,所以我们可以通过 -v 参数来将镜像文件存放在本地的指定路径:
# docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry # docker start $(docker ps -l | grep registry | awk '{print $1}') #启动仓库
要在本地仓库上传镜像,首先需要标记一个镜像,以下标记 busybox ,由于 busybox 镜像比较小,没有的建议先下载:
# docker pull buxybox# docker tag busybox 192.168.0.232:5000/busybox # 对 buxybox 镜像进行标记# docker images #查看标记的镜像# docker push 192.168.0.232:5000/busybox #然后开始上传吧2016/06/14 11:01:17 Error: Invalid registry endpoint https://192.168.0.232:5000/v1/: Get https://192.168.0.232:5000/v1/_ping: dial tcp 192.168.0.232:5000: connection refused. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry 192.168.0.232:5000` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/192.168.0.232:5000/ca.crt
呵呵,报错了!因为Docker从1.3.X之后默认docker registry使用的是https,所以当用docker pull命令下载远程镜像时,如果远程docker registry是非https的时候就会报上面的错误。
为了解决这个问题需要在启动docker server时增加启动参数:
# vim /etc/sysconfig/docker #ip 换为自己的ipother_args="--insecure-registry 192.168.0.232:5000" #默认为空的# service docker restart #重启docker# docker start $(docker ps -l | grep registry | awk '{print $1}') #启动 registry# docker push 192.168.0.232:5000/busybox #然后重新上传吧,这次肯定成功# curl http://192.168.0.232:5000/v1/search #查看上传的镜像{"num_results": 1, "query": "", "results": [{"description": "", "name": "library/busybox"}]}
注意: /v1 代表 registry 的版本,使用 docker pull 安装的默认为 v1 版本。
测试:
使用另一台机器 pull 本地的私有仓库,但是要在 private registry 上使用 SSL,另一种就是强制使用普通方式,仍然像上面一样,在配置文件中加上以下参数:
other_args="--insecure-registry 192.168.0.232:5000"
重启 docker 服务,然后 pull:
[root@sta docker]# docker pull 192.168.0.232:5000/busyboxPulling repository 192.168.0.232:5000/busybox437595becdeb: Download complete437595becdeb: Pulling image (latest) from 192.168.0.232:5000/busyboxStatus: Image is up to date for 192.168.0.232:5000/busybox:latest
感谢你能够认真阅读完这篇文章,希望小编分享的"Linux下如何配置docker的本地仓库"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
镜像
仓库
标记
篇文章
配置
参数
官方
容器
文件
版本
私有
普通
成功
代表
价值
兴趣
只是
可以通过
同时
命令
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
哪个数据库有 查看同义词
fm2017怎么改数据库
数据库中有几个概念模式
我的世界是否能出服务器
计算机网络技术是什么意
视图能用在分布式数据库吗
我的世界服务器雪球回城命令
北京无限新锐网络技术
软件开发外包服务中心
access数据库最后一行
软件开发规范c
linux服务器访问图片文件
教学软件开发公司简介
公司文件管理服务器软件
建筑企业数据库演讲
服务器无法访问此网站拒绝了请求
中国电子学会网络安全工程师
四十岁 软件开发
网络安全手抄写报
数据库哪几个部分最好
数据库的查询设计器
中国移动网络技术部有哪些岗位
用友软件开发多少年了
找软件开发外包公司哪家好
浙江省农信联社软件开发面试
数据库技术及应用实验五
天津正规软件开发售后保障
虚拟身份证 软件开发
软件开发午夜
阿里云服务器统一管理