服务器Docker教程:从安装到运行第一个容器

在 Linux 服务器上装 Docker,核心就三步:确认系统版本、用系统包管理器装 Docker Engine、运行一个测试容器看是否正常。
本文以 Ubuntu/Debian 的 apt 和 CentOS/RHEL 的 yum/dnf 为例,命令可以直接复制执行。
前提是你有服务器的 root 权限或 sudo 权限,并且服务器能正常访问外网。

装之前先确认环境

先看系统版本和架构,避免命令对不上:

cat /etc/os-release
uname -m

输出里能看到系统名称和 x86_64 或 aarch64。
如果之前装过旧版 Docker,先卸载残留包,否则可能出现命令冲突:

sudo apt remove docker docker-engine docker.io containerd runc

CentOS 系统把 apt 换成 yum remove 即可。
这一步只删软件包,不会删除 /var/lib/docker 里的镜像和容器数据,但如果之前有重要容器,建议先备份。

安装 Docker Engine

Ubuntu/Debian 环境下,先更新索引并安装依赖:

sudo apt update
sudo apt install -y ca-certificates curl gnupg

然后添加 Docker 官方 GPG 密钥和软件源。
注意下面的源地址按系统代号自动生成,不需要手动改:

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo $VERSION_CODENAME) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

更新索引并安装:

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

CentOS/RHEL 环境用 dnf 或 yum 安装 docker-ce,源地址换成 https://download.docker.com/linux/centos/docker-ce.repo,其余思路一致。
安装完成后启动并设置开机自启:

sudo systemctl enable --now docker
sudo systemctl status docker

看到 active (running) 就说明服务已经起来了。

配置镜像加速和用户权限

国内服务器直接拉镜像可能很慢,可以配置镜像加速地址。
编辑 /etc/docker/daemon.json(文件不存在就新建):

{
  "registry-mirrors": ["https://你的加速地址"]
}

加速地址需要你自己从可用的镜像服务商获取,不同服务商地址不同,不要照抄来源不明的地址。
改完重载配置:

sudo systemctl daemon-reload
sudo systemctl restart docker

另一个高频问题是每次执行 docker 命令都要加 sudo。
把当前用户加入 docker 组可以解决:

sudo usermod -aG docker $USER

执行后需要退出 SSH 重新登录才生效。注意:加入 docker 组等同于给了该用户接近 root 的权限,只对你信任的账号操作。

跑通第一个容器

用 Nginx 做验证最直观,它能直接通过浏览器访问:

docker run -d --name mynginx -p 8080:80 nginx

参数含义:-d 后台运行,--name 给容器起名,-p 8080:80 把宿主机 8080 端口映射到容器 80 端口。
执行后查看状态:

docker ps

列表里能看到 mynginx 且状态为 Up 就成功了。
接着在浏览器访问 http://服务器IP:8080,出现 Nginx 欢迎页说明端口映射正常。
如果打不开,先检查服务器安全组或防火墙是否放行了 8080 端口。

需要让容器开机自启,创建时加 --restart always:

docker run -d --restart always --name mynginx -p 8080:80 nginx

常见报错怎么排查

提示 permission denied:说明当前用户没在 docker 组,按上面的 usermod 操作后重新登录。

提示 port is already allocated:8080 端口被占用,用 ss -tlnp | grep 8080 查出占用进程,换端口或停掉冲突服务。

拉镜像卡住或超时:多半是网络问题,检查 daemon.json 里的加速地址是否可用,改完记得重启 Docker。

容器启动后马上退出:用 docker logs 容器名 看日志,多数是配置错误或启动命令不对,日志里通常有直接线索。

确认安装是否真的可用

除了看 docker ps,还可以用下面几条命令交叉验证:

docker version
docker info
docker images

docker version 能同时显示客户端和服务端版本,docker info 能看到镜像加速是否生效。
这几项都正常,说明 Docker 已经可以正常用于后续部署。

如果你只是想先跑通再深入,
建议保留这个 Nginx 容器做练习,
熟悉 docker stop、docker rm、docker exec -it 容器名 bash 这几个命令,
再去看 Dockerfile 和 compose,
学习曲线会平缓很多。

分享到:
上一篇
服务器K8s教程:从零搭建单节点集群并部署第一个应用
下一篇
服务器压力测试教程:用 ab 和 wrk 摸清并发上限
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意