Docker 安装与配置

安装 Docker

Docker 提供多种安装方式。如果服务器上安装了桌面,则可以直接安装 Docker Desktop。否则需要安装 Docker Engine。

Docker Desktop 的安装相对简单,直接到官网下载安装包即可。安装完成后需要在【Settings - General - Configure shell completions - Automatically (edits your shell configuration)】点击【Install】。

下面以 Ubuntu 为例介绍 Docker Engine 的安装方式。最简单的方式是使用简易脚本:

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

更多安装方式可以查看 https://docs.docker.com/engine/install/

配置文件

Docker Desktop 的配置文件可以在【Settings - Docker Engine】中进行编辑。

Docker Engine 的配置文件在 /etc/docker/daemon.json

使用权限

默认情况下,执行 Docker 命令需要 root 权限,使用起来非常不便。为此,可以将所有需要使用 Docker 的用户,加入 docker 组:

sudo usermod -aG docker ${USER}

所有在 docker 组内的用户,都可以直接执行 Docker 命令。

NVIDIA Container Toolkit

只有安装了 NVIDIA Container Toolkit,才能在 Docker 中使用 GPU。安装过程可以参考 https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | \
  sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
  sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
  sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit

安装完成后,需要配置 Docker 使用 NVIDIA Container Toolkit:

sudo nvidia-ctk runtime configure --runtime=docker

上面的命令会向配置文件中写入 nvidia 运行时信息:

{
    "runtimes": {
        "nvidia": {
            "args": [],
            "path": "nvidia-container-runtime"
        }
    }
}

只需要在执行 docker run 命令时指定 --runtime=nvidia,就可以在 Docker 中使用 GPU 了。

如果要将 nvidia 设置为默认 runtime,可以手动修改配置文件:

{
    "default-runtime": "nvidia",
    "runtimes": {
        "nvidia": {
            "args": [],
            "path": "nvidia-container-runtime"
        }
    }
}

阿里云容器镜像服务

国内下载 Docker 镜像的速度比较慢,可以将【镜像工具 - 镜像加速器】的地址写入配置文件:

{
    "registry-mirrors": [
        "https://xxxxxxxx.mirror.aliyuncs.com"
    ]
}

如果不方便修改配置文件,也可以使用【实例列表 - 个人版实例】。依次创建【命名空间】和【镜像仓库】,然后在另一台服务器(Server B)上拉取所需镜像。接下来,我们需要将所需镜像上传到【镜像仓库】,并在当前服务器(Server A)上拉取。为了完成这些操作,需要在两台服务器上执行【访问凭证】中给出的登陆命令。

Server B 上需要执行下面的命令:

docker tag ${IMAGE_ID} ${REPO}:${TAG}
docker push ${REPO}:${TAG}

其中,IMAGE_ID 是 Server B 上所需镜像的哈希值,REPO 是【镜像仓库】的公网地址,TAG 最好和所需镜像的 TAG 保持一致。

Server A 上需要执行下面的命令:

docker pull ${REPO}:${TAG}

其他配置(针对 Ubuntu)

建议在配置文件中指定:

{
    "exec-opts": ["native.cgroupdriver=cgroupfs"]
}

所有配置完成后,重新启动 Docker 使配置生效

sudo systemctl daemon-reload
sudo systemctl restart docker

常用 Docker

Ollama

Open WebUI

Apache Tika

LibreTV

基于 Docker 的 GPU 服务器管理系统

https://gist.github.com/LutingWang/fd2c5c9159ed00b483a4f66de7b56afc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LutingWang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值