# docker_install **Repository Path**: tangshitai/docker_install ## Basic Information - **Project Name**: docker_install - **Description**: docker安装脚本 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-21 - **Last Updated**: 2026-05-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Docker 离线安装脚本 ## 离线包目录结构 将安装包按 **CPU 架构** 放入 `bin` 目录(与 `docker_install.sh` 同级): ```text docker_install_script/ ├── docker_install.sh └── bin/ ├── x86_64/ │ ├── docker-28.5.2.tgz # Docker 程序 tar 包(直接放架构目录下) │ ├── docker-29.0.0.tgz # 可多版本,安装时选择 │ └── plugin/ │ ├── docker-compose-2.24.0 # 插件:<插件名>-<版本>(以第一个 - 分隔) │ ├── docker-compose-2.29.0 # 同插件多版本时依次选择 │ └── buildx-0.34.1-rc1 # 版本可含 -,如 0.34.1-rc1 └── aarch64/ ├── docker-28.5.2.tgz └── plugin/ └── docker-compose-2.24.0 ``` - **架构目录根下**:Docker 静态二进制 tar 包,命名须为 `docker-<版本>.tgz` - **plugin/**:CLI 插件可执行文件,命名须为 `<插件名>-<版本>`(**第一个** `-` 之前为插件名,之后为版本) - 插件名不能包含逗号、空白,且不能与 `docker`、`dockerd`、`containerd` 等 Docker 二进制保留名相同 - 安装后插件以**插件名**(不含版本)放入 `cli-plugins` 目录及 `/usr/bin` 软链接 ## 本脚本安装识别 **唯一标准**:安装目录 `${DOCKER_INSTALL_DIR}`(默认 `/opt/tst/docker`)存在且其中有可执行的 `dockerd`。 - 满足上述条件 → 视为本脚本已安装 Docker - 不满足,但系统已有 `docker`/`dockerd` 命令 → 安装拒绝、卸载拒绝 - 卸载时会清理该安装目录、数据目录、配置、systemd 单元及本脚本安装的插件(请勿在 `cli-plugins` 混放其它来源插件) ## 架构标识 脚本根据 `uname -m` 映射到目录名: | uname -m | 目录标识 | |-----------------|------------| | x86_64、amd64 | x86_64 | | aarch64、arm64 | aarch64 | 其他架构暂未适配,安装时会提示联系厂商。 安装时通过 `uname -m` **自动映射**到 `bin/<架构标识>/`;**Docker 与插件版本均在交互终端中必选**(按 plugin 目录读取顺序,对每种插件名依次选版)。安装前会检查 `plugin/` 目录与防火墙。 ## 用法 ```bash # 安装(须在交互终端 / TTY 中运行) sudo bash docker_install.sh install # 卸载(须在交互终端 / TTY 中运行) sudo bash docker_install.sh remove ```