不使用docker push ,使用docker save 打包成tar文件,scp到服务器上,应对离线环境

如果你不想使用 docker push,而是希望将本地 Docker 镜像打包成 tar 文件,并通过 scp 将其传输到目标服务器上,你可以按照以下步骤操作:

1. 在本地打包 Docker 镜像为 tar 文件

首先,在本地构建并打包你的 Docker 镜像。假设你的镜像名称为 fastapi-app

  1. 构建 Docker 镜像:

    如果你还没有构建镜像,可以使用 docker-composedocker build 来构建镜像。例如:

    bash 复制代码
    docker-compose build

    或者,如果你只是使用 Dockerfile

    bash 复制代码
    docker build -t fastapi-app .
  2. 使用 docker save 打包镜像为 tar 文件:

    运行以下命令将镜像导出为 tar 文件:

    bash 复制代码
    docker save -o fastapi-app.tar fastapi-app

    这将会把 fastapi-app 镜像保存为一个名为 fastapi-app.tar 的文件。

2. 使用 SCP 将 tar 文件传输到目标服务器

接下来,使用 scptar 文件复制到目标服务器。例如:

bash 复制代码
scp fastapi-app.tar username@your-server-ip:/path/to/destination
  • username 是你服务器的用户名。
  • your-server-ip 是目标服务器的 IP 地址。
  • /path/to/destination 是目标服务器上存放文件的目录。

3. 在目标服务器上加载 Docker 镜像

在目标服务器上,使用 docker load 命令加载刚刚传输的 tar 文件:

  1. 进入存放 fastapi-app.tar 文件的目录,或者指定完整路径:

    bash 复制代码
    cd /path/to/destination
  2. 使用 docker load 命令加载镜像:

    bash 复制代码
    docker load -i fastapi-app.tar

    这将加载镜像到目标服务器的 Docker 本地镜像库中。

4. 运行镜像

加载完成后,检查镜像是否成功加载:

bash 复制代码
docker images

你应该可以看到 fastapi-app 镜像出现在列表中。然后,你就可以运行容器了:

bash 复制代码
docker run -d -p 8088:8088 fastapi-app

5. 总结

以下是整个流程的总结:

  1. 在本地构建并保存 Docker 镜像为 tar 文件:

    bash 复制代码
    docker save -o fastapi-app.tar fastapi-app
  2. 使用 scptar 文件传输到目标服务器:

    bash 复制代码
    scp fastapi-app.tar username@your-server-ip:/path/to/destination
  3. 在目标服务器上加载镜像:

    bash 复制代码
    docker load -i /path/to/destination/fastapi-app.tar
  4. 运行 Docker 容器:

    bash 复制代码
    docker run -d -p 8088:8088 fastapi-app

这样,你就可以将本地的 Docker 镜像通过 tar 包形式传输并在目标服务器上运行。

相关推荐
HackTwoHub6 小时前
最新Nessus2026.6.8版本主机漏洞扫描/探测工具Windows/Linux
linux·运维·服务器·安全·web安全·网络安全·安全架构
QWEDDRFTG6 小时前
C13/C19怎么选?服务器电源线电流与接口选型技巧
服务器
QWEDDRFTG8 小时前
服务器电源线怎么选?接口、电流、线径、认证一次讲清
服务器
正经教主8 小时前
【docker基础】第五课:Docker网络详解
运维·docker·容器
鹤鸣的日常10 小时前
前端运行时动态环境变量方案
前端·react.js·docker·前端框架·vue·gitlab
mN9B2uk1713 小时前
大数据量高并发的数据库优化
服务器·数据库·oracle
我是谁??13 小时前
ubuntu22.04 通过docker部署vLLM(Qwen3-0.6B)大模型+New API+OpenWebUI
docker·容器·vllm
土星云SaturnCloud13 小时前
边缘计算赋能智慧工地:从“看得见“到“管得住“的智能化升级
服务器·人工智能·ai·边缘计算
运维瓦工13 小时前
DevOps 生态介绍(十):Docker Compose 核心 YAML 配置详解与常用命令大全
spring cloud·docker·容器
云烟成雨TD14 小时前
Spring AI 1.x 系列【59】容器化开发支持:Docker Compose 与 Testcontainers
人工智能·spring·docker