Linux云服务器上Docker容器配置完全指南
在云计算时代,Docker已成为应用部署的标准工具。本文将详细介绍如何在Linux云服务器上配置Docker容器,从环境准备到实战部署,助您快速掌握容器化技术。
一、准备工作
1.1 选择合适的云服务器
推荐配置:
- 操作系统:Ubuntu 20.04 LTS/CentOS 8
- CPU:至少2核
- 内存:4GB以上
- 存储:50GB SSD
1.2 安全组设置
确保开放以下端口:
- SSH端口(默认22)
- Docker API端口(默认2375/2376)
- 应用所需端口
二、Docker环境安装
2.1 Ubuntu系统安装
# 更新软件包索引
sudo apt-get update
# 安装依赖包
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
# 添加Docker官方GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# 添加Docker软件源
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
# 安装Docker引擎
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
2.2 验证安装
sudo docker run hello-world
看到"Hello from Docker!"表示安装成功
三、Docker基础配置
3.1 非root用户使用Docker
sudo usermod -aG docker $USER
newgrp docker
3.2 配置镜像加速器
修改/etc/docker/daemon.json:
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
重启服务生效:
sudo systemctl daemon-reload
sudo systemctl restart docker
四、容器实战部署
4.1 部署Nginx容器
docker run -d -p 80:80 --name my-nginx nginx
4.2 部署MySQL容器
docker run -d \
--name mysql-server \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=yourpassword \
-v /data/mysql:/var/lib/mysql \
mysql:5.7
4.3 使用Docker Compose
创建docker-compose.yml文件:
version: '3'
services:
web:
image: nginx
ports:
- "80:80"
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: example
启动服务:
docker-compose up -d
五、容器数据管理
5.1 数据卷使用
docker volume create my-vol
docker run -d --name nginx-test -v my-vol:/usr/share/nginx/html nginx
5.2 绑定挂载
docker run -d --name nginx-bind -v /host/path:/container/path nginx
六、安全最佳实践
- 定期更新Docker版本
- 限制容器资源使用
- 使用非root用户运行容器
- 配置日志轮转
- 启用内容信任(Docker Content Trust)
通过本文的详细步骤,您应该已经掌握了在Linux云服务器上配置Docker容器的完整流程。Docker极大地简化了应用部署过程,合理使用容器技术可以显著提高开发效率和系统资源利用率。
建议进一步学习Docker Swarm或Kubernetes等容器编排工具,构建更强大的容器化应用架构。
