阿里云创建私有仓库,解决在服务器上docker镜像拉不下来的问题

由于网络原因,无法拉取Docker镜像,现在有两个解决方案

一种方案是在本地制作镜像后将其推送到私有镜像仓库,部署时从私有镜像仓库拉取并运行

另一种方案是将制作Docker镜像所需的基础镜像推送到私有镜像仓库 ,每次制作镜像的时候直接从私有镜像仓库中拉取

由于我已经编写了相关脚本,为减少改动量,我选择了第二个方案

准备工作

创建个人实例

先在阿里云中搜索容器镜像服务,选择个人实例

创建命名空间

选择私有

创建仓库

获取访问凭证

配置固定密码
登录到私有仓库

推送Docker镜像

根据文档,需要先登录,然后制作镜像,最后推送

登录和上面的一样,这里略过

制作镜像

按照上述文档的指引,依次执行命令,先制作镜像再进行推送

因为本地没有网络问题可以拉取镜像,就在本地拉取镜像然后推送到私有镜像仓库中去

  1. 执行docker pull eclipse-temurin:8-jre拉取镜像
  2. 执行docker images查看镜像ID
  1. 执行docker tag f41f351ab5c0 registry.cn-guangzhou.aliyuncs.com/priveat/jdk8:latest制作镜像
  2. 执行docker push registry.cn-guangzhou.aliyuncs.com/priveat/jdk8:latest推送Docker镜像到私有镜像仓库中

拉取镜像

在看一下文档,到这里已经很明了了,直接执行docker pull registry.cn-guangzhou.aliyuncs.com/priveat/jdk8:latest就可以了

修改脚本

修改Dockerfile

我的Dockerfile中是这个拉不下来

根据上面的逻辑,把这里换成私有镜像仓库中的镜像就行,现在改成

服务器登录

以下是一个错误示例,显示了在未登录的情况下无法拉取镜像

登录之后就可以拉去下来了

另一种解决方案是在IDEA中将JAR包制作成镜像,直接推送到私有仓库。同时,也可以在IDEA中直接运行容器 。个人感觉没什么区别,本地还要连接线上服务器,有点不安全就没考虑

相关推荐
别动我齐刘海5 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
VIP_CQCRE8 小时前
给团队搭一个 AI 工作台:Open WebUI 接入 Ace Data Cloud 实战
docker·ai·rag·open webui·ace data cloud
gjf05_058 小时前
人该怎样活着呢?版本75.8
学习
li星野10 小时前
【学习记录】PCB与PCBA核心知识全解析:从设计到制造的关键细节
学习·制造
卿卿的产品经理日记10 小时前
【AI产品经理实战】Day 35|从“沉迷工具“到回归 AI 底层:Skill 收官、系统复盘与下一个 13 天
人工智能·学习·产品经理
一条泥憨鱼11 小时前
【从0开始学习计算机网络】| ARP 协议:地址解析,ARP 欺骗,链路层寻址
网络·后端·学习·计算机网络
HY小宝F11 小时前
树莓派智能摄像头系统 30 天重学计划之 Day 04 · HTTP / API:控制链入口 —— 学习总结
网络协议·学习·http
程序员老赵12 小时前
Docker 部署 Portainer CE:轻松搭建容器管理平台
docker·容器·开源
TTATTC12 小时前
Gmail、Drive、日历共用一套命令:gws 如何在运行时把 Discovery 文档编译成 CLI
docker·开源