本地将镜像打包推送到阿里云的镜像服务器

一、标准部署流程

1)进入项目目录

先进入有 Dockerfile 的目录:

bash 复制代码
cd /你的项目目录

先确认目录里有 Dockerfile:

bash 复制代码
ls

2)本地构建镜像

按照你提供的镜像名,先构建本地镜像:

bash 复制代码
docker build -t huoshan-asr-service:latest .

构建完成后检查一下:

bash 复制代码
docker images | grep huoshan-asr-service

如果成功,能看到类似:

bash 复制代码
huoshan-asr-service   latest   xxxxxxxxxxxx   ...

3)登录阿里云 ACR

为了避免把密码直接写进命令历史,建议用更安全的方式:

bash 复制代码
echo '你的ACR密码' | docker login --username="上海金桥亦法云平台" --password-stdin registry.cn-shanghai.aliyuncs.com

你本次实际操作时,把 你的ACR密码 换成你自己的密码即可。

不要再把密码明文贴到终端历史、脚本、聊天记录里。

4)给镜像打远程仓库 tag

使用你这条正确的仓库地址:

bash 复制代码
docker tag huoshan-asr-service:latest registry.cn-shanghai.aliyuncs.com/prod-huoshan-asr-service/python:v1.0.0

可以检查一下:

bash 复制代码
docker images | grep prod-huoshan-asr-service

5)推送到阿里云 ACR

注意这里也要用单横杠版本:

bash 复制代码
docker push registry.cn-shanghai.aliyuncs.com/prod-huoshan-asr-service/python:v1.0.0

二、你这次可直接执行的完整命令

把下面按顺序执行即可:

bash 复制代码
cd /你的项目目录

docker build -t huoshan-asr-service:latest .

echo '你的ACR密码' | docker login --username="上海金桥亦法云平台" --password-stdin registry.cn-shanghai.aliyuncs.com

docker tag huoshan-asr-service:latest registry.cn-shanghai.aliyuncs.com/prod-huoshan-asr-service/python:v1.0.0

docker push registry.cn-shanghai.aliyuncs.com/prod-huoshan-asr-service/python:v1.0.0

三、如果你想一条条验证

可以用这几条辅助检查:

查看本地镜像:

bash 复制代码
docker images

查看登录是否成功:

bash 复制代码
docker login --username="上海金桥亦法云平台" registry.cn-shanghai.aliyuncs.com

查看镜像是否已正确打 tag:

bash 复制代码
docker images | grep registry.cn-shanghai.aliyuncs.com/prod-huoshan-asr-service/python

四、常见报错排查

  1. docker build 失败

通常是:

• 当前目录没有 Dockerfile

• 依赖文件没复制进去

• 基础镜像拉取失败

• 项目启动命令写错

  1. docker login 失败

通常是:

• 用户名错误

• 密码错误

• 仓库地址错误

• 网络到 registry.cn-shanghai.aliyuncs.com 不通

  1. docker push 失败

通常是:

• tag 的仓库地址和实际 ACR 仓库不一致

• 命名空间或仓库名写错

• 没登录成功

• 没有该仓库的推送权限

  1. denied: requested access to the resource is denied

说明通常是:

• 仓库路径写错

• 命名空间写错

• 当前账号没有 push 权限

五、更推荐的版本号写法

你现在用的是:

v1.0.0

可以用,但更实用一点的方式是:

bash 复制代码
v1.0.0
v1.0.1
20260317-01
20260317-commitsha

例如:

bash 复制代码
docker tag huoshan-asr-service:latest registry.cn-shanghai.aliyuncs.com/prod-huoshan-asr-service/python:20260317-01
docker push registry.cn-shanghai.aliyuncs.com/prod-huoshan-asr-service/python:20260317-01
相关推荐
Gofarlic_oms122 分钟前
利用API实现ANSYS许可证管理自动化集成
运维·服务器·开发语言·matlab·自动化·负载均衡
invicinble2 小时前
这里对java的知识体系做一个全域的介绍
java·开发语言·python
wbs_scy2 小时前
【Linux 线程进阶】进程 vs 线程资源划分 + 线程控制全详解
java·开发语言
ss2732 小时前
食谱推荐系统功能测试如何写?
java·数据库·spring boot·功能测试
AI人工智能+电脑小能手2 小时前
【大白话说Java面试题】【Java基础篇】第15题:JDK1.7中HashMap扩容为什么会发生死循环?如何解决
java·开发语言·数据结构·后端·面试·哈希算法
倔强的石头1063 小时前
【Linux指南】基础IO系列(八):实战衔接 —— 给微型 Shell 添加完整重定向功能
linux·运维·服务器
try2find3 小时前
打印ascii码报错问题
java·linux·前端
014-code3 小时前
CompletableFuture 实战模板(超时、组合、异常链处理)
java·数据库
Nicander3 小时前
多数据源下@transcation事务踩坑
java·后端
それども4 小时前
DELETE 和 TRUNCATE TABLE区别
java·数据库·mysql