精选优惠 · 官方会场

轻量应用服务器

新用户专享

2核2G · 200M峰值带宽 · 40G系统盘

限阿里云新用户
68元/年限阿里云新用户
立即选购

云服务器 ECS

新老同享

经济型e · 2核2G · 3M固定带宽 · 40G盘

同主体限1台 · 不可叠券
99元/年同主体限1台 · 不可叠券
立即选购

云数据库 RDS

数据库精选

托管数据库 · 弹性扩容 · 自动备份

按地域与配置选择
查看活动价按地域与配置选择
查看优惠
更多阿里云活动收起阿里云活动
11月1日—30日企业至高减 1728 元

双11满减礼包

个人至高减360元;需对应实名认证,满减门槛及适用产品以官方规则为准。

前往官方会场
AI 专场让 AI 应用轻松上云

AI 产品特惠

浏览 Token Plan、Qoder 与 AI 应用等官方活动,按实际使用需求选择。

前往官方会场
搭配更省心服务器 + 数据库

云产品组合购

查看 ECS、RDS 等组合活动,按业务规模和实际预算搭配。

前往官方会场
官方活动合集热门云产品,一站选

云小站更多特惠

继续查看服务器、数据库与存储等优惠,选择适合自己的配置。

前往官方会场

阿里云服务器装 docker 后,镜像怎么推送到 ACR

很多团队的第一步云端交付,是把本地构建好的镜像放到阿里云 ECS 上运行。这篇按实际顺序走一遍:在 ECS 上装 Docker,配置加速器,用一个 Node.js 小服务做示例,构建后推送到 ACR,最后整理几个常见卡点。

阿里云服务器装 docker 后,镜像怎么推送到 ACR

一、为什么放在阿里云上跑

Docker 能让应用在哪台机器上都是同一套运行环境,但真要放到线上,还得处理镜像存放、网络隔离和流量分发。阿里云的分工比较清楚:ECS 提供计算资源,ACR(容器镜像服务)负责存放和分发镜像,VPC 管网络隔离,SLB 做负载分发。

对小团队来说,好处是不用自己搭镜像仓库,也不必在宿主机网络上花太多时间,精力可以放在业务代码上。

二、开始前检查什么

下面几项确认好,后面的步骤才不会卡住:

  • 一台已开通的 ECS 实例。示例使用 Ubuntu 22.04,其他仍在维护的 Linux 发行版也可以。CentOS 8 已停止维护,不建议新装。
  • 安全组放行 22 端口,用于 SSH 登录。服务需要对外访问时,再放行对应的业务端口。
  • 在容器镜像服务控制台开通 ACR,并创建命名空间。
  • 本地装好 Docker,用来构建和验证镜像。

安全组是最容易被忽略的一项。容器启动成功却访问超时,多数时候是端口没放行,而不是 Docker 出了问题。

三、在 ECS 上安装 Docker

Ubuntu 上安装 Docker 建议走阿里云镜像站的 docker-ce 源,国内速度比官方源快很多。先更新软件包索引:

sudo apt-get update

导入 GPG 密钥、添加软件源的命令,直接从阿里云镜像站的 docker-ce 页面复制。系统版本和密钥格式会变,手抄很容易出错。安装完成后,设置开机自启并立即启动,再用 docker version 确认客户端和服务端版本都能正常显示。

3.1 配置镜像加速器

国内直接拉取 Docker Hub 上的镜像,经常慢到超时。阿里云给每个账号分配了专属加速地址,可以在容器镜像服务控制台找到。把它写进 /etc/docker/daemon.json 的 registry-mirrors 字段,然后重启 Docker。

加速器主要缓存热门基础镜像,比如 nginx、redis、mysql。如果你的构建每次都要拉这些镜像,效果会比较明显。

四、案例:打包 Node.js 服务并推送到 ACR

下面用一个简单的 Node.js 接口服务,走完从写 Dockerfile 到推送的整个流程。

4.1 编写 Dockerfile

在项目根目录新建 Dockerfile,内容如下:

FROM node:20-alpine

WORKDIR /app

COPY package*.json ./

RUN npm ci –omit=dev

COPY . .

EXPOSE 3000

CMD [“node”, “server.js”]

这份文件有几处要注意。先单独复制 package*.json 再安装依赖,Docker 会缓存这一层,之后只改源码时不用重新装依赖。npm ci 要求项目里有 package-lock.json,没有的话先在本地执行一次 npm install 生成。基础镜像用 alpine 版本,体积小很多,本例构建出的镜像大约 150MB 左右,实际大小取决于依赖多少。

另外一定要加一个 .dockerignore,至少写上 node_modules 和 .git。否则本机的 node_modules 会被 COPY . . 整个打进镜像,既撑大体积,还可能覆盖掉容器里刚装好的依赖。

4.2 构建与本地验证

执行 docker build -t my-api:v1.0 . 完成构建,再用 docker run -d -p 3000:3000 my-api:v1.0 启动容器,通过 curl 访问接口确认服务正常。本地跑通再推送,可以避免把有问题的镜像传到云端,也省去之后回滚的麻烦。

4.3 推送到 ACR

先在 ACR 控制台的访问凭证里设置仓库登录密码。这个密码是 ACR 单独设置的,不是阿里云账号密码。建议用专门的凭证,不要直接用主账号的密码。

登录命令如下,把账号换成自己的:

docker login –username=你的账号 registry.cn-hangzhou.aliyuncs.com

登录成功后,给镜像打上带仓库地址的标签,再推送:

docker tag my-api:v1.0 registry.cn-hangzhou.aliyuncs.com/你的命名空间/my-api:v1.0

docker push registry.cn-hangzhou.aliyuncs.com/你的命名空间/my-api:v1.0

地址里的 cn-hangzhou 要和你开通 ACR 的地域一致,换地域就得换地址。推送完成后,在 ECS 上执行 docker pull 同一地址即可拉取。如果 ECS 和 ACR 在同一地域,可以在 ACR 控制台找到 VPC 内网地址改用它拉取,速度和流量成本都更合适。

五、常见问题怎么查

  • 拉取镜像超时:先检查 daemon.json 里的加速器地址是否写对,再确认改完之后已经重启 Docker。
  • 容器启动了但访问不了:按顺序看三处。安全组有没有放行端口,docker ps 里的端口映射是否生效,服务是否监听在 0.0.0.0。容器里的服务如果只监听 127.0.0.1,外部同样访问不到。
  • 磁盘空间不足:用 docker system prune 清理停止的容器和无用镜像。这个命令会删除数据,执行前先用 docker ps -a 和 docker images 确认没有需要保留的内容。
  • 登录 ACR 失败:确认输入的是 ACR 单独设置的登录密码,同时检查镜像地址的地域是否和命名空间所在地域一致。

六、小结

整个流程是:ECS 装好 Docker 并配置加速器,构建镜像并在本地验证,推送到 ACR,再从 ECS 拉取运行。每一步都有可以检查的地方,出问题时按网络、安全组、配置的顺序排查,定位会快很多。服务稳定后,可以再接入容器服务 ACK 做编排,或者用 CI 流水线自动完成构建和推送。

赞 (0)
注销阿里云账号要先确认哪些条件
上一篇 2026年11月1日 下午2:03
阿里云服务器上怎么部署幕布私有化版本?
下一篇 2026年11月1日 下午2:04

相关推荐

  • 云服务器推荐码怎么填才能拿到优惠

    第一次买云服务器时,很多人会在下单页看到“推荐码”或“邀请码”输入框。它不显眼,但填对了,首月或首年的费用能少一截。对新手来说,这是最容易做到的省钱动作之一。 云服务器推荐码是什么 简单说,推荐码是服务商拉新的一种方式。老用户或合作伙伴生成一串编码,新用户注册或下单时填入,双方各拿到一点优惠,形式通常是代金券、折扣额度或试用时长。它属于平台推广活动,具体规则…

    2026年10月30日
  • 云服务器合同模板怎么写?条款、责任与付款风险要点

    很多中小企业买云服务器,习惯先比配置和价格。真正出问题时,往往是合同里几行字惹的麻烦:数据丢了找不到责任归属,服务断了赔不了多少,续费一涨也没有谈判余地。下面按合同模板的常见结构,讲几个容易被忽略的条款,方便签约前对照检查。 先分清你签的是哪一种合同 云服务器采购大致有两种情况。一种是在云厂商官网直接买标准化产品,条款以平台协议为准,个人和小团队多数是这种。…

    2026年10月30日
  • 云服务器按用途和预算怎么挑

    第一次买云服务器,很容易在几家厂商的官网之间打转。首页写的都是“低至几十元”“高性能”“稳定可靠”,看完反而更不确定。云服务器购买哪家好用,没有放之四海皆准的答案。先想清楚拿它做什么,通常比先比品牌更省事。 先想清楚用途,再看品牌 跑分高的机器不一定适合你。一个个人博客,1 核 2G 通常就够用;企业官网对带宽和可用性的要求会高很多。买之前可以先问自己三件事…

    2026年10月30日
  • 云服务器的特点有哪些?弹性扩容、按需付费和数据安全怎么平衡

    业务量忽高忽低、自建机房投入大、运维人手紧,这是很多中小企业选服务器时都会碰到的问题。云服务器给出的是另一种思路。想清楚云服务器的特点,才能判断它适不适合放进自己的技术方案。 云服务器是什么 简单说,云服务器是服务商从云计算平台上按需划出来的一台虚拟机。底层是大规模的物理服务器集群,服务商通过虚拟化把资源切分成多个相互独立的实例。拿到之后远程登录,就能安装系…

    2026年10月30日
  • 阿里云挂游戏是什么?云服务器挂机的费用、风险与合规边界

    挂游戏是指让游戏角色或客户端在没人操作时继续运行,常见的有自动采集资源、刷副本、完成每日任务。把这类运行环境放到云服务器上,主要是因为家里的电脑不能一直开着。阿里云挂游戏说的,就是用阿里云的ECS云服务器承载这套运行环境。 先说清楚一件事:把游戏客户端跑在云上,本身不违法。很多玩家这样做,是为了远程登录、跨设备操作或保持在线。但如果运行的是违反服务条款的外挂…

    2026年11月1日
返回顶部