By wangjing, 11 September, 2025
Forums

https://www.kdocs.cn/l/cafADxnsX3uf

ash123fhd/denovo-snake:2.0(10.202.40.92 → 10.202.40.82)

10.202.40.92服务器上已经存在一个 Docker 镜像 ash123fhd/denovo-snake:2.0,但 10.202.40.82 上没有该镜像,通过 SSH + 压缩包 的方式,将这个镜像迁移到 10.202.40.82 上,从而可以在那里运行无参转录组分析。

  • 0032ef0038a3——Docker 容器的 ID
  • /home/* ——假设要传输的数据
  • username是服务器上的用户名,根据实际情况替换;
  1. 登录92 服务器,在/home/wangjing目录下执行:
docker save -o denovo-snake-2.0.tar ash123fhd/denovo-snake:2.0

这条命令会生成一个名为 denovo-snake-2.0.tar的文件,里面包含了该镜像的所有层和元数据。

  1. 将 tar 包传到 10.202.40.82

使用 scp命令,把刚刚保存的 tar 包从 92 服务器传到 10.202.40.82 /tmp/目录下:

scp denovo-snake-2.0.tar username@10.202.40.82:/tmp/
  1. 在 10.202.40.82 上加载镜像
ssh username@10.202.40.82      #SSH 登录到 10.202.40.82:
docker load -i /tmp/denovo-snake-2.0.tar    #切换到你存放 tar 包的目录(如 /tmp/)
docker images | grep ash123fhd/denovo-snake      #查看是否已存在该镜像
  1. 运行容器

确认镜像加载成功后,你就可以像在 92 服务器上一样,使用该镜像来运行无参转录组的分析流程了,例如:

docker run -it --name username ash123fhd/denovo-snake:2.0 bash
  1. 从92传输数据

92服务器上执行:

scp -r /data2/** username@10.202.40.82:/home/*

10.202.40.82上运行:

docker ps -a  #找到 ​​CONTAINER ID 为 0032ef0038a3​​ 的容器,确认它是否存在,以及它的状态

将宿主机上的数据拷贝进 Docker 容器

docker cp /home/* 0032ef0038a3:/home/samples/
#docker cp [宿主机上的文件或目录路径] [容器ID或名字]:[容器内的目标路径]