背景:客户提供了算力服务器。计划安装大模型,但要使用docker运行
- 拷贝docker压缩包docker-24.0.7.tgz ,自行搜索下载吧。67M大小
- 解压缩到
/opt
bash
tar xzvf /tmp/docker-24.0.7.tgz -C /opt/
- 二进制文件拷贝到系统目录拷贝到
/user/local/bin
目录下。我没有拷贝到/usr/bin目录下,因为有重名文件
- 创建 Docker 系统服务
cpp
vim /etc/systemd/system/docker.service
- 添加以下内容
bash
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service containerd.service
Wants=network-online.target
Requires=docker.socket containerd.service
[Service]
Type=notify
ExecStart=/usr/local/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
StartLimitBurst=3
StartLimitInterval=60s
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
Delegate=yes
KillMode=process
[Install]
WantedBy=multi-user.target
- 创建 Docker Socket 文件
bash
sudo vim /etc/systemd/system/docker.socket
bash
[Unit]
Description=Docker Socket for the API
PartOf=docker.service
[Socket]
ListenStream=/var/run/docker.sock
SocketMode=0660
SocketUser=root
SocketGroup=docker
[Install]
WantedBy=sockets.target
- 创建 Docker 用户组并配置
bash
# 创建 docker 用户组
sudo groupadd docker
# 将当前用户添加到 docker 组(避免每次使用 sudo)
sudo usermod -aG docker $USER
# 重新登录或刷新组权限
newgrp docker
- 启动并启用 Docker 服务
bash
# 重新加载 systemd 配置
sudo systemctl daemon-reload
# 启动 Docker 服务
sudo systemctl start docker
# 设置 Docker 开机自启
sudo systemctl enable docker
# 检查 Docker 服务状态
sudo systemctl status docker
- 卸载。没用过,放着
bash
# 停止服务
sudo systemctl stop docker
sudo systemctl disable docker
# 删除二进制文件
sudo rm -f /usr/bin/docker /usr/bin/dockerd /usr/bin/containerd*
# 删除解压目录
sudo rm -rf /opt/docker/
# 删除服务文件
sudo rm -f /etc/systemd/system/docker.service /etc/systemd/system/docker.socket
# 重新加载 systemd
sudo systemctl daemon-reload
# 删除数据(谨慎!这会删除所有镜像和容器)
sudo rm -rf /var/lib/docker/