【Linux】Docker:离线主机部署

在网络环境下准备 Docker

下载 Docker 安装包

  • 在另一台有网络连接的计算机上,访问 Docker 官方下载页面
  • 选择并下载适合您系统的 Docker 版本,通常是最新的稳定版本,例如 docker-<version>.tgz

传输文件

  • 使用 USB 驱动器或其他方式将下载的 .tgz 文件传输到离线的 Ubuntu 主机上。

在离线主机上安装 Docker

解压 Docker 安装包

  • 在终端中,导航到存放 .tgz 文件的目录,并运行以下命令:

    bash 复制代码
    tar xzvf docker-<version>.tgz

移动 Docker 二进制文件

  • 将解压后的 Docker 二进制文件移动到系统的可执行路径中:

    bash 复制代码
    sudo mv docker/* /usr/bin/

创建 systemd 服务文件

  • 创建 Docker 的 systemd 服务文件,运行以下命令:

    bash 复制代码
    sudo vi /etc/systemd/system/docker.service
  • 在文件中添加以下内容:

    ini 复制代码
    [Unit]
    Description=Docker Application Container Engine
    Documentation=https://docs.docker.com
    After=network.target
    
    [Service]
    ExecStart=/usr/bin/dockerd
    ExecReload=/bin/kill -s HUP $MAINPID
    Restart=always
    Type=notify
    TimeoutSec=60
    LimitNOFILE=1048576
    LimitNPROC=512
    
    [Install]
    WantedBy=multi-user.target

重新加载 systemd 配置

  • 运行以下命令以重新加载 systemd 配置,使其识别新的服务文件:

    bash 复制代码
    sudo systemctl daemon-reload

启动 Docker 服务

  • 使用以下命令启动 Docker 服务:

    bash 复制代码
    sudo systemctl start docker

设置 Docker 服务开机自启

  • 使用以下命令设置 Docker 服务在系统启动时自动启动:

    bash 复制代码
    sudo systemctl enable docker

验证 Docker 是否安装成功

  • 运行以下命令确认 Docker 安装成功:

    bash 复制代码
    sudo docker --version

从 Docker 镜像打包

在有网络的计算机上拉取所需 Docker 镜像

  • 使用以下命令从 Docker Hub 拉取需要的镜像:

    bash 复制代码
    docker pull <image-name>

保存 Docker 镜像为 tar 文件

  • 使用 docker save 命令将镜像保存为 tar 文件:

    bash 复制代码
    docker save -o <image-name>.tar <image-name>

传输镜像文件

  • 将生成的 <image-name>.tar 文件转移到离线的 Ubuntu 主机。

从 Docker 容器打包

将当前容器打包:

  • 停止容器(如果需要):

    bash 复制代码
    sudo docker stop <container-name>
  • 使用

    复制代码
    docker commit

    命令将容器打包为镜像(可选):

    bash 复制代码
    sudo docker commit <container-name> <new-image-name>
  • 将打包后的镜像保存为 tar 文件:

    bash 复制代码
    sudo docker save -o <new-image-name>.tar <new-image-name>

在离线主机上加载 Docker 镜像

加载镜像

  • 在离线主机上,运行以下命令加载镜像:

    bash 复制代码
    docker load -i <image-name>.tar

验证镜像是否加载成功

  • 使用以下命令查看已加载的镜像:

    bash 复制代码
    docker images

运行容器

启动容器

  • 使用以下命令启动 Docker 容器:

    bash 复制代码
    docker run -it <image-name>
相关推荐
www.021 小时前
Linux 终端守护神 Tmux :如何优雅地管理后台实验与恢复会话
linux·运维·服务器·人工智能·tmux
广州灵眸科技有限公司1 小时前
瑞芯微(EASY EAI)RV1126B yolov11-track多目标跟踪部署教程
linux·开发语言·网络·人工智能·yolo·机器学习·目标跟踪
谷雨不太卷1 小时前
计算机网络:套接字
linux·服务器·计算机网络
YuanDaima20481 小时前
WSL2 与 Ubuntu 22.04 基础环境部署指南
linux·运维·服务器·人工智能·ubuntu·docker
万邦科技Lafite1 小时前
API接口一键获取商品评论,根据商品评论分析客户画像
linux·服务器·数据库·windows·microsoft·电商开放平台
极客先躯2 小时前
高级java每日一道面试题-2025年12月08日-实战篇[Docker]-如何为 Docker 配置代理?如何为容器配置代理?
java·docker·代理配置的双层架构·docker 守护进程配置代理·为容器配置代理·构建时环境变量·运行时注入环境变量
sulikey2 小时前
操作系统磁盘 I/O:为何选择“块“而非“扇区“?
linux·操作系统·io·磁盘·磁盘io
一个人旅程~2 小时前
如何永久关闭bitlocker并防止出现更新后被强制加密?
linux·windows·经验分享·电脑
源远流长jerry2 小时前
TCP 三次握手深度解析:从内核源码到生产实践
linux·运维·网络·网络协议·tcp/ip
黄筱筱筱筱筱筱筱3 小时前
RHCE---web服务器①
linux·运维·服务器