Skip to content

Linux 服务器配置 Docker 与 Docker Compose 环境指南

在 Linux 服务器上配置 Docker 和 Docker Compose 环境是部署容器化应用的基础。以下是详细的安装与配置步骤,适用于大多数 Linux 发行版。

一、系统准备与要求

在安装 Docker 前,请确保您的 Linux 系统满足以下条件:

  • 64 位操作系统(如 Ubuntu、CentOS 等)
  • 内核版本至少 3.10(可通过uname -r查看)
  • 推荐配置:2 核 CPU/4GB RAM/40GB SSD
  • 稳定的网络连接

二、Docker 安装步骤

1. 更新系统并安装依赖包

Ubuntu/Debian 系统:

bash
sudo apt-get update
sudo apt-get install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release \
    software-properties-common

CentOS/RHEL 系统:

bash
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 git curl

2. 添加 Docker 官方 GPG 密钥和仓库

Ubuntu/Debian:

bash
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=amd64 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

CentOS/RHEL(使用阿里云镜像加速):

bash
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo

3. 安装 Docker 引擎

Ubuntu/Debian:

bash
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

CentOS/RHEL:

bash
sudo yum makecache fast
sudo yum -y install docker-ce

4. 启动 Docker 并设置开机自启

bash
sudo systemctl start docker
sudo systemctl enable docker

5. 验证安装

bash
sudo docker run hello-world
docker --version

三、Docker Compose 安装

1. 下载最新版 Docker Compose

bash
sudo curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep -Po '"tag_name": "\K.*?(?=")')/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2. 设置执行权限

bash
sudo chmod +x /usr/local/bin/docker-compose

3. 验证安装

bash
docker-compose --version

四、配置优化

1. 配置国内镜像加速

创建或编辑/etc/docker/daemon.json文件:

bash
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.ccs.tencentyun.com",
    "https://registry.docker-cn.com"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

2. 用户权限配置(避免每次使用 sudo)

bash
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker

五、基本使用验证

1. Docker 基本命令测试

bash
# 运行Nginx容器
docker run -d -p 80:80 nginx:alpine

# 查看运行中的容器
docker ps

# 停止容器
docker stop [容器ID]

2. Docker Compose 测试

创建docker-compose.yml文件:

yaml
version: "3.8"
services:
  web:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - ./html:/usr/share/nginx/html

启动服务:

bash
docker-compose up -d

六、安全与维护建议

  1. 定期更新:保持 Docker 和 Docker Compose 为最新版本
  2. 资源清理
    bash
    docker system prune -af  # 清理未使用的镜像、容器和网络
  3. 日志管理:定期清理容器日志防止磁盘占满
  4. 生产环境建议
    • 使用特定版本标签而非 latest
    • 配置资源限制
    • 启用内容信任:export DOCKER_CONTENT_TRUST=1

通过以上步骤,您已在 Linux 服务器上成功配置了 Docker 和 Docker Compose 环境,可以开始部署容器化应用了。如需更高级的功能如集群管理,可考虑学习 Docker Swarm 或 Kubernetes。