linux docker 离线 安装

背景:客户提供了算力服务器。计划安装大模型,但要使用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目录下,因为有重名文件
  1. 创建 Docker 系统服务
cpp 复制代码
vim /etc/systemd/system/docker.service
  1. 添加以下内容
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
  1. 创建 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/
相关推荐
EmbedLinX11 小时前
嵌入式之协议解析
linux·网络·c++·笔记·学习
vortex511 小时前
解密UUOC:Shell编程中“无用的cat使用”详解
linux·shell编程
wangjialelele11 小时前
Linux中的进程管理
java·linux·服务器·c语言·c++·个人开发
杜子不疼.12 小时前
【Linux】库制作与原理(二):动态库的制作与使用
linux·运维·服务器
森焱森12 小时前
嵌入式硬件工程师应知 白银快速分析报告
linux·c语言·arm开发·嵌入式硬件·去中心化
忆~遂愿12 小时前
Runtime 上下文管理:计算实例的生命周期、延迟最小化与上下文切换优化
java·大数据·开发语言·人工智能·docker
RisunJan12 小时前
Linux命令-lpq(查看打印队列状态)
linux·运维·服务器
山君爱摸鱼12 小时前
Linux-服务进程
linux·运维·服务器
阿乐艾官12 小时前
【linux文件系统重要目录及命令解释】
linux·运维·服务器
blueSatchel12 小时前
U-Boot启动后做的事情
linux·u-boot