插件窝 干货文章 如何在Linux上安装和配置Docker

如何在Linux上安装和配置Docker

Docker sudo containerd 安装 971    来源:    2025-04-15

以下是在Linux上安装和配置Docker的详细步骤指南,适用于大多数主流Linux发行版:

一、系统要求

  • 64位Linux系统(内核3.10或更高)
  • 推荐Ubuntu 20.04+/CentOS 7+/Debian 10+
  • 至少2GB RAM(生产环境建议4GB+)

二、安装步骤

方法1:使用官方脚本快速安装(推荐新手)

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

方法2:手动安装(各发行版)

  1. Ubuntu/Debian:
# 卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc

# 设置仓库
sudo apt-get update
sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

# 添加Docker官方GPG密钥
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# 设置稳定版仓库
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 安装Docker引擎
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
  1. CentOS/RHEL:
# 卸载旧版本
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

# 设置仓库
sudo yum install -y yum-utils
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

# 安装Docker引擎
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

三、配置Docker

  1. 启动Docker服务
sudo systemctl enable docker
sudo systemctl start docker
  1. 验证安装
sudo docker run hello-world
  1. 非root用户权限配置(推荐):
sudo usermod -aG docker $USER
newgrp docker  # 立即生效当前会话
  1. 配置镜像加速器(国内用户)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://registry.docker-cn.com", "https://hub-mirror.c.163.com"]
}
EOF
sudo systemctl restart docker

四、常用管理命令

# 服务管理
sudo systemctl status docker
sudo systemctl restart docker

# 镜像管理
docker pull ubuntu:20.04
docker images
docker rmi <IMAGE_ID>

# 容器管理
docker ps -a
docker stop <CONTAINER_ID>
docker rm <CONTAINER_ID>
docker logs <CONTAINER_ID>

# 查看信息
docker info
docker version

五、卸载Docker

# Ubuntu/Debian
sudo apt-get purge docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

# CentOS/RHEL
sudo yum remove docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker

六、安全建议

  1. 定期更新Docker版本
  2. 不要使用--privileged参数运行容器
  3. 限制容器的资源使用(CPU/内存)
  4. 使用只读文件系统运行敏感容器

常见问题解决

  1. 权限拒绝错误:确保用户已加入docker组或使用sudo
  2. 端口冲突:检查netstat -tulnp | grep <端口号>
  3. 存储驱动问题:在/etc/docker/daemon.json中配置"storage-driver": "overlay2"

如需更高级配置(如远程API访问、TLS加密等),请参考官方文档:https://docs.docker.com/engine/install/