阿里云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包、启动命令等)
相关推荐
AKAMAI1 天前
每百万 Token 成本砍六成,出海 AI 团队开始重算推理这笔账
人工智能·云计算
Inhand陈工14 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
Database_Cool_14 天前
什么是数据仓库物化视图?AnalyticDB MySQL 实时物化视图能力解析
人工智能·mysql·阿里云
Database_Cool_14 天前
大规模数据分析降本指南:AnalyticDB Serverless 弹性架构实战
数据仓库·阿里云·架构·数据分析·serverless
tiancaijiben14 天前
阿里云Kubernetes集群托管完全指南:从创建到生产级运维
云计算
我是小bā吖14 天前
Claude Code 模型接入阿里云 AI 网关并统计不同使用者的模型用量
网络·人工智能·阿里云
翼龙云_cloud14 天前
阿里云国际代理商:如何使用RDS MySQL 构建网站数据库?
数据库·mysql·阿里云
互联网推荐官14 天前
上海软件定制开发公司推荐:从PaaS工程化路径看D-coding的技术取舍
云原生·云计算·paas·软件开发·开发经验·上海
sbjdhjd14 天前
从零搭建企业级 CI/CD(下):Jenkins+GitLab+Harbor 全链路实战指南
git·servlet·ci/cd·云原生·云计算·gitlab·jenkins
wcy1008614 天前
为 CentOS 7.6 (7.6.1810) 配置阿里云 Vault 源
linux·阿里云·centos