docker-搭建私有服务-并且在另一台服务机拉取下自己提交的镜像
根据前一次作业的docker搭建。
在云服务上搭建私有仓库,将服务器制作成镜像,然后再你们第三方的系统(本机,虚拟机,云服务器都可以)上安装docker,并拉取你自身的镜像,验证成功,截图附带mac地址。
要准备两台服务器(我这边本地演示)
昨天第一台已经安装配置好了,所以我们第二台服务器只需要安装好docker就行了,注意:做到”启动 Docker“那一步就好了,下面还有配置加速服务也可以加上。
第一篇链接:https://www.cnblogs.com/NanKe-Studying/p/15669472.html
拉取registry镜像
docker pull registry
列出本地有啥镜像
docker images
准备同样以这个tomcat镜像去制作我们的私有镜像。
看当前docker有在运行啥镜像
docker ps
发现无正在运行的镜像
把tomcat开了 看他进程id 一会提交要用到
然后再 docker ps 看看
tomcat已经在运行了~ ~ ~
开始打包本地tomcat镜像并指定作者nanke(自己名)以我们自命名的名字mytomcat2
docker commit -a "作者" -m "提交描述" 本地镜像的进程id(CONTAINER ID) 你指定这个要打包提交的镜像命名
再看看本地镜像 发现我们自己提交的mytomcat2有了
给预上传的镜像打上标记
docker tag mytomcat2 ip地址:5000/mytomcat2
再执行推送
docker push ip地址:5000/mytomcat2
发现报错 我们需要配置下文件 让docker信任私有仓库
vi /etc/docker/daemon.json
ins 加上这个
{"insecure-registries": ["ip地址:5000"]}
如果有配置加速服务 像我格式写 esc :wq保存并退出
insecure-registries那里把http://去掉,我图里错了
重启下docker
systemctl restart docker
这个时候我们继续push提交 他会一直包这个错误 The push refers to repository
明明 我们在配置文件添加了为什么还是访问不了呢???
参考:https://blog.csdn.net/kidom1412/article/details/108128859
我们上面虽然是拉取了registry镜像 但是我们没有创建仓库容器运行啊!!宿舍大佬卡这好久 ,老师也没说,后面我先弄出来了
加上这个
docker run -di --name=registry -p 5000:5000 registry
然后去浏览器地址访问
页面出现
{“repositories”:[]}
表示仓库容器创建启动成功
这个时候我们再一次提交 , 不行的话顺便把防火墙也关了,(我是有关的 syctemctl stop firewalld)
docker push ip地址:5000/mytomcat2
提交OK啦~~~~~~~~~~~~~~~~~~~
去浏览器地址继续访问,发现有我们提交的内容了
终。。。。。。。。。。。。。。。
去另外一台服务器拉取我们刚才服务器提交上去的自定义镜像
保证你前面已经安装并且运行了docker
先不废话 先去添加配置文件先
vi /etc/docker/daemon.json
加上这些 自己服务器ip自己填上去
{ "registry-mirrors": [ "https://hub-mirror.c.163.com", "https://mirror.baidubce.com" ], "insecure-registries": ["192.168.3.35:5000","192.168.3.37:5000"] }
重置docker
systemctl restart docker
然后就可以开始拉取云服务器上的私有镜像啦
docker pull ip:5000/mytomcat2
END---
下面这些是之前搞错的 不用再一次拉取个私有仓库 上面直接pull云服务器镜像就好了
拉取registry镜像
docker pull registry
创建仓库容器运行
docker run -di --name=registry -p 5000:5000 registry
在浏览器访问仓库
开始我们的拉取
来了
已经拉取下来了。
END
是不是要点个推荐?!
感谢:https://blog.csdn.net/kidom1412/article/details/108128859
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗