新手在 Linux 服务器上用 Docker 跑起第一个容器:从安装到部署一个 Nginx 网站的完整步骤
一、引言
刚拿到一台云服务器时,很多新手的第一反应是手动装环境:装 Nginx、改配置、调权限,一套流程下来半小时起步,换一台机器又要从头再来。Docker 把这件事变简单了:它把应用连同运行环境打包成镜像,换台机器也能原样跑起来。本文面向第一次接触容器的朋友,以一台 Debian 12 云服务器为例,从安装 Docker 开始,一步步把一个 Nginx 网站部署上线,全程只需要十几条命令。
二、准备工作
开始之前,先确认三件事:
- 一台 Linux 云服务器(本文用 Debian 12,Ubuntu 的命令基本相同),并已通过 SSH 登录;
- 当前账号有 sudo 权限;
- 云服务器的安全组已放行 80 端口(HTTP),否则最后一步浏览器会打不开页面。
三、安装 Docker
先更新软件包索引,装好下载密钥要用的工具:
sudo apt-get update
sudo apt-get install -y ca-certificates curl
接着添加 Docker 官方的 GPG 密钥和软件源:
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
再更新一次索引,安装 Docker 引擎本体:
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io
最后启动服务并设为开机自启,再看一眼版本号确认安装成功:
sudo systemctl enable --now docker
docker --version
用 Ubuntu 的话,把上面命令里的 debian 换成 ubuntu 即可,其余不变。
四、验证 Docker 能正常工作
先跑一下官方的测试镜像,确认引擎能正常拉取并运行容器:
sudo docker run hello-world
如果输出里能看到 “Hello from Docker!”,说明安装没有问题。不想每次都敲 sudo 的话,可以把当前用户加入 docker 组,退出重新登录后生效:
sudo usermod -aG docker $USER
五、部署 Nginx 网站
1. 准备网页文件
在当前目录建一个放网页的文件夹,并写一个最简单的首页:
mkdir -p ~/mysite
echo '<h1>Hello, Docker!</h1><p>这是我的第一个容器网站。</p>' > ~/mysite/index.html
2. 启动容器
一条命令把 Nginx 跑起来:
sudo docker run -d --name myweb -p 80:80 -v ~/mysite:/usr/share/nginx/html:ro nginx:latest
简单解释一下:-d 表示让容器在后台运行;–name myweb 是给容器起的名字,方便后续管理;-p 80:80 把服务器的 80 端口映射到容器的 80 端口;-v 把本地的网页目录挂载进容器,这样改完网页刷新就能看到,不用重启容器。第一次运行时会自动拉取 nginx 镜像,稍等片刻即可。
3. 检查运行状态
sudo docker ps
curl http://localhost
docker ps 里能看到 myweb 处于 Up 状态,curl 返回刚才写的 HTML,就说明容器工作正常。最后在浏览器里访问服务器的公网 IP,能看到 “Hello, Docker!” 页面,部署就完成了。
4. 常用管理命令
sudo docker logs myweb # 查看容器日志
sudo docker stop myweb # 停止容器
sudo docker start myweb # 再次启动
sudo docker rm -f myweb # 删除容器
六、小结
回顾全过程:安装 Docker 只做了“加软件源、apt 安装、启动服务”三件事;部署网站只用了一条 docker run。相比直接在宿主机上装 Nginx,容器方式的好处很直观:环境都封装在镜像里,不污染系统;删掉容器就等于卸载干净;同一条命令搬到任何一台装有 Docker 的机器上都能原样复现。跑通第一个容器后,不妨再用 docker logs 看看访问日志,继续熟悉容器。
- 点赞
- 收藏
- 关注作者
评论(0)