售前咨询400-838-0503

Linux云服务器如何配置Docker容器?

技术文档 2025-05-30 02:09

Linux云服务器上Docker容器配置完全指南

在云计算时代,Docker已成为应用部署的标准工具。本文将详细介绍如何在Linux云服务器上配置Docker容器,从环境准备到实战部署,助您快速掌握容器化技术。

一、准备工作

1.1 选择合适的云服务器

推荐配置:

  • 操作系统:Ubuntu 20.04 LTS/CentOS 8
  • CPU:至少2核
  • 内存:4GB以上
  • 存储:50GB SSD

1.2 安全组设置

确保开放以下端口:

  1. SSH端口(默认22)
  2. Docker API端口(默认2375/2376)
  3. 应用所需端口

二、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等容器编排工具,构建更强大的容器化应用架构。

如本公告涉及你的产品,或有不清楚之处,可提交工单确认。

提交工单