阿里云ACR镜像上传与使用

问题背景:目标是用阿里云的流水线,自己在codeup拉取代码,用maven打包成jar,并利用Dockerfile文件,将jar和jre打包成一个镜像,部署到ECS上。当前问题是在docker拉取jre的公共镜像时无法拉取,报错:

ERROR: failed to solve: DeadlineExceeded: DeadlineExceeded: DeadlineExceeded: eclipse-temurin:17-jre-alpine: failed to resolve source metadata for docker.io/library/eclipse-temurin:17-jre-alpine: failed to do request: Head "https://registry-1.docker.io/v2/library/eclipse-temurin/manifests/17-jre-alpine": dial tcp 104.244.43.234:443: i/o timeout

解决方案:先将jre的镜像包拉取到本地,再从本地上传到ACR,这样流水线构建的时候可以直接从ACR拉取到镜像,并且能享受到阿里云的镜像加速服务。

步骤 1:下载镜像到本地 / 构建机

优先用docker.1ms.run源拉取(避免 docker.io 的网络问题):

bash 复制代码
# 拉取镜像(指定docker.1ms.run源)
docker pull docker.1ms.run/library/eclipse-temurin:17-jre-alpine

# 验证镜像是否下载成功
docker images
# 输出类似:docker.1ms.run/library/eclipse-temurin   17-jre-alpine   xxxxxxxx   2 weeks ago   48MB

步骤 2:登录你的阿里云 ACR 实例

ACR控制台:容器镜像服务-->实例列表-->个人版实例-->镜像仓库-->点击已创建的仓库名称

根据基本信息中的操作指南,登录

bash 复制代码
# 登录ACR(按提示输入阿里云账号密码,或用ACR控制台的临时登录令牌)
docker login crpi-****.cn-beijing.personal.cr.aliyuncs.com

步骤 3:给镜像打 ACR 仓库的标签(关键,符合 ACR 地址规范)

bash 复制代码
# 打标签(替换为你的ACR信息)
docker tag docker.1ms.run/library/eclipse-temurin:17-jre-alpine \
  crpi-*****.cn-beijing.personal.cr.aliyuncs.com/***/eclipse-temurin:17-jre-alpine

步骤 4:推送镜像到 ACR 的 指定仓库

bash 复制代码
# 推送打标后的镜像到ACR
docker push crpi-****.cn-beijing.personal.cr.aliyuncs.com/***/仓库名:base-eclipse-temurin-17-jre-alpine

步骤 5:修改流水线的 Dockerfile(拉取 ACR 中的镜像)

bash 复制代码
# 替换原FROM eclipse-temurin:17-jre-alpine
FROM crpi-*****.cn-beijing.personal.cr.aliyuncs.com/****/仓库名:base-eclipse-temurin-17-jre-alpine

# 后续的构建命令保持不变
WORKDIR /app
RUN apk add --no-cache shadow-utils \
    && groupadd -r appuser \
    && useradd -r -g appuser appuser \
    && apk del shadow-utils \
    && rm -rf /var/cache/apk/*
# ... 其他步骤(如复制JAR包、启动命令等)
相关推荐
AKAMAI15 小时前
Akamai 云服务持续强化其基础架构(更新时间:2026年8月)
人工智能·云计算
zhaodezhu168815 小时前
软件SaaS信息技术云计算GEO优化公司专属服务活动正式开启
云计算·信息技术·geo优化·软件saas·公司服务
zhaodezhu168819 小时前
软件SaaS信息技术云计算GEO优化公司行业百科
云计算·信息技术·geo优化·软件saas·公司行业
云老大-阿里云国际站代理商1 天前
华为云国际站服务代理商:NAT网关怎么配?多台ECS共用公网IP要注意什么
服务器·华为云·云计算
闲云自留地1 天前
告别命令恐惧症,openEuler 基础操作 + 文本 + 网络管理实战
linux·运维·云计算
我爱吃土豆12 天前
从零给个人项目搭一套 CI/CD
阿里云·部署·cicd
逐流人2 天前
Containerd容器管理实战:从架构原理到nerdctlcrictl工具链
linux·运维·云原生·容器·云计算·containerd
yi碗汤园2 天前
OSS对象存储服务
网络·阿里云
事界见闻2 天前
多电平变换器实时仿真怎么选?微秒级解算与多机拓展下的技术评估与方案分析
云计算
闲云野鹤在人间2 天前
docker 入门 | 第7章 容器监控 和 第8章 容器日志 详解
运维·docker·容器·架构·云计算