当前位置: 首页 > news >正文

docker 一键安装脚本

docker 一键安装脚本

Docker 离线安装包,助你轻松部署!

想体验 Docker 的便捷,却受限于网络环境? 我们为你提供 Docker 离线安装包,解决你的燃眉之急!

获取方式:

  1. 关注我们的公众号
  2. 在公众号后台回复关键词:Docker离线
  3. 即可获得下载链接和详细安装教程!

离线安装,快速上手,快来试试吧!

一、自己动手

1、九阳神功(自己动手)

1、下载 docker 离线安装包
下载最新版本的 docker (或者选择自己想要安装的版本)到本地。

1)docker 下载地址:Docker 版本下载 || Docker-compose 版本下载 || 对应版本查看

2)如果需要根据后面迭代更新最新版本直接下载替换conf中的docker-compose和package中的docker压缩包即可

PS: 此脚本针对 CentOS 系统设计和测试,其他系统可能不兼容。

2、编写执行脚本

先创建对应目录,里面需要 package,conf,dockerWork 三个目录

前面两个是放安装包和执行脚本,最后一个是工作目录

mkdir -p /mnt/data/install/conf  /mnt/data/install/package  /mnt/data/dockerWork

1、安装脚本 installDocker.sh

#!/bin/bash
# 定义字体颜色
RE='\033[1;31m' # Red color code
GR='\033[1;32m' # Green color code
BL='\033[1;34m' # Blue color code
PU='\033[1;35m' # Purple(紫) color code
SK='\033[1;36m' # SkyBlue(天蓝) color code
NC='\033[0m'    # Reset color to normalecho -e "${PU}######## 开始安装 Docker ########${NC}"# =============================
# 解压 Tar 包并授权
# =============================
echo '解压 tar 包并赋予权限...'
tar -xvf ./package/docker* -C ./package && chmod 777 ./package/docker/*# =============================
# 移动二进制文件到系统路径
# =============================
echo '将 Docker 移到 /usr/bin 目录下...'
cp -r ./package/docker/* /usr/bin/echo '将 docker.service 移到 /etc/systemd/system/ 目录并授权...' 
cp -r ./conf/docker.service /etc/systemd/system/ && chmod 777 /etc/systemd/system/docker.service# =============================
# 设置 Docker 工作目录(支持自定义路径)
# =============================
echo -e "${PU}请输入 Docker 数据存储路径(默认为 /mnt/data/dockerWork):${NC}"
read -p "> " CUSTOM_PATH# 如果未输入,则使用默认路径
if [ -z "$CUSTOM_PATH" ]; thenDOCKER_DATA_ROOT="/mnt/data/dockerWork"
elseDOCKER_DATA_ROOT="$CUSTOM_PATH"
fi# 确保目录存在
if [ ! -d "$DOCKER_DATA_ROOT" ]; thenecho -e "${PU}检测到目标路径不存在,正在创建目录...${NC}"mkdir -p "$DOCKER_DATA_ROOT"
fiecho -e "${GR}使用的 Docker 数据根路径为:${DOCKER_DATA_ROOT}${NC}"# =============================
# 创建必要目录并写入配置文件
# =============================
echo '创建 Docker 相关目录...'
mkdir -p /etc/dockertee /etc/docker/daemon.json <<-EOF
{"data-root": "$DOCKER_DATA_ROOT","insecure-registries": ["registry.cn-shenzhen.aliyuncs.com"],"registry-mirrors": ["https://docker.1panel.live","https://docker.m.daocloud.io","https://docker.1ms.run","https://docker.yonght.top""https://hub-mirror.c.163.com","https://docker.m.daocloud.io","https://ghcr.io","https://mirror.baidubce.com","https://docker.nju.edu.cn","https://mirror.baidubce.com","https://registry.docker-cn.com","http://f1361db2.m.daocloud.io","https://dockerhub.azk8s.cn","https://docker.mirrors.ustc.edu.cn","https://ud6340vz.mirror.aliyuncs.com","https://reg-mirror.qiniu.com","https://hub-mirror.c.163.com","https://mirror.ccs.tencentyun.com"]
}
EOF# =============================
# 启动服务并设置开机自启
# =============================
echo '重新加载 Systemd 配置并重启 Docker...'
systemctl daemon-reload && systemctl restart docker
echo '设置 Docker 开机自启动...'
systemctl enable docker.serviceecho '######## Docker 版本信息 ########'
docker info# =============================
# 安装 Docker Compose
# =============================
echo '将 docker-compose 移到 /usr/local/bin/ 目录...'
cp ./conf/docker-compose* /usr/local/bin/docker-compose && chmod 777 /usr/local/bin/docker-compose# =============================
# 验证安装结果
# =============================
echo -e "${PU}######## 验证 Docker 安装结果... ########${NC}"
if ! command -v docker &>/dev/null; thenecho -e "${RE}❌ Docker 安装失败!${NC}"exit -1
fi
echo -e "${GR}✅ Docker 安装成功!!!${NC}"echo -e "${PU}######## 验证 Docker Compose 安装结果... ########${NC}"
if ! command -v docker-compose &>/dev/null; thenecho -e "${RE}❌ Docker Compose 安装失败...${NC}"echo '尝试将 /usr/local/bin 添加到环境变量中...'echo 'export PATH="$PATH:/usr/local/bin"' | sudo tee -a /etc/profile > /dev/nullsource /etc/profileif ! command -v docker-compose &>/dev/null; thenecho -e "${RE}❌ Docker Compose 仍然无法找到!${NC}"exit -1fi
fi
echo -e "${GR}✅ Docker Compose 安装成功!!!${NC}"# =============================
# 清理临时文件
# =============================
rm -rf ./package/dockerecho -e "${GR} 所有操作已完成!${NC}"

2、卸载脚本 uninstallDocker.sh

#/bin/bashecho "停止所有容器服务"
docker stop $(docker ps -a -q)
echo "删除所有容器"
docker rm $(docker ps -a -q)
echo "删除docker所有镜像"
docker rmi -f $(docker images -q)
echo '停止docker服务...'
systemctl stop docker
echo '取消开机自启...'
systemctl disable docker
echo '删除docker相关包...'
cd /usr/bin/ && rm -rf containerd* ctr docker* dockerd runc
echo '取消docker.service注册文件...'
cd /etc/systemd/system/ && rm -rf docker.service# 获取docker数据目录
DOCKER_WORK_DIR="/mnt/data/dockerWork"
if [ -f "/etc/docker/daemon.json" ]; thenDATA_ROOT=$(grep -o '"data-root"[[:space:]]*:[[:space:]]*"[^"]*"' /etc/docker/daemon.json | sed 's/"data-root"[[:space:]]*:[[:space:]]*"\([^"]*\)"/\1/')if [ ! -z "$DATA_ROOT" ]; thenDOCKER_WORK_DIR="$DATA_ROOT"fi
fiecho "删除docker配置文件...DOCKER_WORK_DIR=$DOCKER_WORK_DIR"
cd /etc/ && rm -rf docker/*
if [ -d "$DOCKER_WORK_DIR" ]; thenrm -rf "$DOCKER_WORK_DIR"
fiecho 'yum方式清空docker配置文件...'
yum remove -y docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker && rm -rf /var/lib/containerd
echo '重新加载配置文件...'
systemctl daemon-reload
echo 'docker卸载成功!!!'echo '删除docker-compose...'
rm -rf /usr/local/bin/docker-compose
echo 'docker-compose卸载成功!!!'

3、编写 docker.service

当前文件放在上面创建的 conf 中

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPIDTimeoutSec=0RestartSec=2ExecStartPost=/usr/sbin/iptables -P FORWARD ACCEPT
Restart=alwaysTimeoutStartSec=0LimitNOFILE=infinity
LimitNPROC=infinityLimitCORE=infinityDelegate=yes
KillMode=process
StartLimitBurst=3
StartLimitInterval=60s[Install]
WantedBy=multi-user.target

上传 jar 注意路径

二、乾坤大挪移(cv大法)

网盘中下载对应压缩包

# 解压并授权
tar -zxvf docker-28.3.3_install.tar.gz && cd dockerInstall && chmod 755 installDocker.sh uninstallDocker.sh#安装安装命令
sh installDocker.sh#卸载
sh uninstallDocker.sh 

image

提示输入docker-data的路径,正常如果不配置会到根目录中,所以这里增加配置支持自定义目录,如果没有就给默认目录

image

安装完成后会提示成功,表示都已经安装好了,后面就可以愉快使用了,当前离线安装主要是针对只能使用内网或者没有网络的环境还需要使用docker的情况

image

卸载会删除所有docker相关内容,停止容器删除镜像和对应目录

image

Docker 安装愁白头? 离线安装解千愁!

Docker 大法好,但下载安装真烦恼! 网络卡成翔,进度条不动摇!

别怕! 救星来了! Docker 离线安装包,让你摆脱网络魔爪,轻松玩转容器技术!

关注公众号,回复 “Docker离线” , 告别漫长等待,迎接飞速安装!

http://www.jsqmd.com/news/60523/

相关文章:

  • 2025年12月中国企业市场地位证明机构哪家比较好?合规赋能全场景,精准匹配高价值伙伴
  • 烟台英格索兰空压机安装维保及节能改造企业推荐
  • vscode内存过大
  • 2025年12月幽门螺旋杆菌产品排行榜:科学防控+权威测评TOP5,避坑指南全解析
  • strcpystrncpy
  • 免费毕业论文工具推荐:6款AI神器助力高效完成论文写作(附真实文献引用与查重优化)
  • 小铁台球加盟联系方式:品牌优势与加盟条件概述
  • 3D有限元直流电阻率法正演程序
  • 2025北京留学中介机构哪个最好去香港
  • 2025 年 12 月红木/实木/软装/家具/家居品牌权威推荐榜:品质与设计的完美融合!
  • 2025年12月杭州获客软件公司推荐榜单:基于多维度对比的权威排行
  • 2025 年 12 月红木家具品牌推荐排行榜:从床到茶桌,古典与现代的完美融合!
  • 2025温州奢侈品名包回收TOP5权威推荐:看哪家口碑好
  • 2025年12月杭州获客软件公司推荐榜单及对比分析:五大获客工具深度评价
  • 2026寒假第三十三届全国高校具身智能机器人与嵌入式Linux高级师资培训通知
  • 2025年12月球墨铸铁管厂家TOP5推荐:适配选型+成本优化采购指南
  • Spring AI 项目实战(三):Spring Boot + AI + DeepSeek 打造智能客服系统(附完整源码) - 指南
  • 深入解析:51单片机基础-GPIO结构详解
  • 2025年12月杭州获客教育培训公司推荐榜:五大权威机构全面对比与选择指南
  • .NET 10 Native AOT 最新进展:架构演进、性能范式与生态系统重塑
  • 一个注重隐私的AI图像生成工具:如何优雅地拥有一张“体面证件照”
  • 2025 年 12 月红木家具品牌权威推荐榜:东方红木家居,古典韵味与现代设计完美融合!
  • 2025年12月文创/非遗/艺术品权威推荐榜单:匠心独运的文化瑰宝与收藏佳品!
  • 2025年12月新疆旅行社评测排名:口碑与服务的权威榜单解析
  • 2025年12月活性白土厂家推荐榜单与选择指南
  • 2025北京监理公司推荐:技术实力与服务质量分析
  • sqlsugar更新数据操作
  • 2025年12月电永磁吊具厂家推荐榜单:权威对比与选择指南
  • 2025北京监理公司推荐:基于多维度评估与行业数据解析
  • PbootCMS制作个性分页条之单页/总页数效果(PbootCMS 分页条实现与美化指南)