零基础入门Linux容器化:安装Docker并部署第一个容器
容器化是什么?为什么选Linux?
Linux容器化是一种轻量级的虚拟化技术,它让你能在同一个操作系统里运行多个隔离的应用环境,每个环境叫一个“容器”。
相比传统虚拟机,容器启动快、资源占用少,非常适合开发和部署。
本教程以Docker为例,带你从零开始体验Linux容器化。
准备工作:一台Linux服务器和SSH连接
- 操作系统:推荐Ubuntu 20.04+ 或 CentOS 7+(本教程基于Ubuntu 22.04)。
- 服务器:云服务器或本地虚拟机均可,确保可以正常联网。
- SSH工具:Windows用PuTTY或Windows Terminal,Mac/Linux直接用终端。
- 用户权限:需要一个具有sudo权限的普通用户(避免直接用root)。
连接到服务器后,先更新包索引(使用sudo):
sudo apt update && sudo apt upgrade -y
核心步骤:安装Docker引擎
Docker是当前最流行的Linux容器化引擎。
安装方法如下:
1. 安装依赖包
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
2. 添加Docker官方GPG密钥和仓库
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
3. 安装Docker
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
安装完成后,启动Docker并设置开机自启:
sudo systemctl start docker
sudo systemctl enable docker
4. 将当前用户加入docker组(避免每次加sudo)
sudo usermod -aG docker $USER
退出当前SSH会话并重新登录,让组权限生效。
避坑指南:常见错误与解决方法
- 权限问题:运行
docker ps出现“permission denied” → 检查是否已退出重登录,或使用sudo docker临时运行。 - 安装失败:提示“无法定位软件包” → 确认系统版本与仓库匹配,或尝试先安装
docker.io(Ubuntu自带旧版)。 - 容器启动后无法访问 → 检查防火墙是否开放了容器映射的端口(如80、8080)。
- 镜像拉取慢 → 配置国内镜像加速器(阿里云、腾讯云等),编辑
/etc/docker/daemon.json加入{"registry-mirrors":["https://你的加速地址"]}后重启Docker。
效果验证:运行Nginx容器并访问
执行以下命令拉取并运行一个Nginx容器:
docker run -d --name my-nginx -p 8080:80 nginx:latest
参数解释:-d后台运行,--name容器名称,-p 8080:80将宿主机的8080端口映射到容器的80端口。
查看容器运行状态:
docker ps
输出中应该能看到容器my-nginx状态为Up。
现在,在浏览器中访问http://你的服务器IP:8080,如果看到Nginx的欢迎页面,说明你的第一个Linux容器化应用成功部署!
如果想停止并删除容器:
docker stop my-nginx
docker rm my-nginx
写在最后
通过本文,你已完成了Linux容器化从理论到实践的全过程:安装了Docker、避开了常见坑、并成功运行了容器。
后续你可以尝试运行MySQL、Redis或自己的Web应用,进一步熟悉容器管理。
遇到异常时,优先回顾避坑部分,大多问题都能在那里找到答案。