奋斗
努力

2h2g服务器安装docker?

云计算

2H2G(2核CPU,2GB内存) 的服务器上安装 Docker 是可行的,但需要注意资源占用和优化配置以避免性能问题。以下是详细步骤和注意事项:


1. 系统要求

  • 操作系统:推荐较新的 Linux 发行版(如 Ubuntu 20.04+/CentOS 7+/Debian 10+)。
  • 资源警告:Docker 本身占用约 100-300MB 内存,2GB 内存需谨慎运行多个容器。

2. 安装 Docker

Ubuntu/Debian

# 卸载旧版本(如有)
sudo apt-get remove docker docker-engine docker.io containerd runc

# 更新源并安装依赖
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common

# 添加 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=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

# 安装 Docker
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io

# 验证安装
sudo docker run hello-world

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 device-mapper-persistent-data lvm2

# 添加仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 安装 Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io

# 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

# 验证
sudo docker run hello-world

3. 优化配置(针对低内存)

限制 Docker 资源

  • 调整守护进程配置
    编辑 /etc/docker/daemon.json(若无则新建):

    {
    "default-ulimits": {
      "nofile": {
        "Name": "nofile",
        "Hard": 65535,
        "Soft": 65535
      }
    },
    "log-driver": "json-file",
    "log-opts": {
      "max-size": "10m",
      "max-file": "3"
    }
    }

    重启 Docker:sudo systemctl restart docker

  • 限制容器内存
    运行容器时明确限制内存(例如限制为 512MB):

    docker run -it --memory=512m --memory-swap=1g ubuntu

关闭不必要的服务

  • 避免运行非必要的容器或后台服务(如 GUI、监控工具等)。

使用轻量级镜像

  • 优先选择 Alpine Linux 等小体积镜像:
    docker pull alpine:latest

4. 常见问题解决

  • 内存不足
    若出现 OOM(Out of Memory) 错误,需减少容器内存限制或增加交换分区(Swap):

    sudo fallocate -l 2G /swapfile
    sudo chmod 600 /swapfile
    sudo mkswap /swapfile
    sudo swapon /swapfile
    # 永久生效:将 `/swapfile swap swap defaults 0 0` 添加到 `/etc/fstab`
  • 性能慢
    避免同时运行多个容器,或升级服务器配置。


5. 验证资源占用

# 查看 Docker 进程资源使用
docker stats

# 查看系统资源
free -h
top

总结

2H2G 服务器可以安装 Docker,但需:

  1. 限制容器资源(CPU/内存)。
  2. 使用轻量级镜像。
  3. 关闭非必要服务。
  4. 必要时增加 Swap。

如果主要运行少量轻量容器(如 Nginx、Redis),2GB 内存足够;若需运行数据库等重型服务,建议升级配置。

未经允许不得转载:云服务器 » 2h2g服务器安装docker?