简单的命令快速下载远程各种docker 镜像 github 库,各种软件资料。

6 篇文章 0 订阅
5 篇文章 0 订阅

做研究开发和项目实战中经常要下载国外的docker镜像和软件源代码,软件安装包,
这个过程如果子国外的服务器上执行,一般不会超过10秒,如果在中国境内的机器上执行,
一般要5分钟甚至几个小时,中间可能还会断线,,,,各种郁闷的事情都可能发生,导致工作效率极其低下。
最快的是使用但是国内有很多限制,不是所有人都可以做到的,有时还是很慢.

后来我就干脆到国外服务器下载后,ssh 搬回本地,或通过启动一个nginx ,然后 web 方式下载回本地计算机。但是这样好麻烦,很影响工作,特别是下载数量多的时候,,,

最近整合了一种可行的,也符合政策的方法:
通过ssh 自动下载回来

#!/usr/bin/env bash

echo "前提条件:  1.有一个账户密码,设置免密登陆,可以ssh 到国外的一台服务器server  2. server可以上互联网。3. 操作终端安装了ssfs命令: 如果没有安装  yum install fuse-sshfs "  详细参考: https://www.howtoing.com/how-to-install-sshfs-on-centos-7

echo "输入是个获取文件的命令组,产生一个文件a,输出是本地文件系统的一个文件a"

echo "检测ssfs命令是否存在,to do "

FOREIGN_HOST_IP="你的服务器IP"
FOREIGN_HOST_PORT=你的服务器端口
REMOTE_SERVER_SAVE_DIR="/tmp"
FILE_NAME="myfile.tgz"
TARGET_FILE_NAME=${REMOTE_SERVER_SAVE_DIR}/${FILE_NAME}

REMOTE_MIRROR_DIR=`pwd`/tmp/mirror
LOCAL_SAVE_DIR=`pwd`/tmp/local
mkdir -p ${REMOTE_MIRROR_DIR}
mkdir -p ${LOCAL_SAVE_DIR}
echo "下面的命令,请根据实际业务需求填写"
USER_COMMAND="mkdir -p ${REMOTE_SERVER_SAVE_DIR} docker pull k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1; docker image save k8s.gcr.io/kubernetes-dashboard-amd64:v1.10.1 | gzip > ${TARGET_FILE_NAME};"

echo "挂载远程服务器目录${REMOTE_SERVER_SAVE_DIR}到本地${LOCAL_SAVE_DIR}"
sshfs -p 27210 root@${FOREIGN_HOST_IP}:${REMOTE_SERVER_SAVE_DIR}  $REMOTE_MIRROR_DIR

echo "执行用户定义的远程下载任务"
ssh -p 27210 root@${FOREIGN_HOST_IP}  "${USER_COMMAND}"

echo "拷贝文件到本地"
cp  $REMOTE_MIRROR_DIR/${FILE_NAME}  ${LOCAL_SAVE_DIR} 
pwd;ls -al

把上面代码保存为fastdownload 文件,然后 chmod +x fastdownload

执行fastdownload 结果如下:
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190920100524596.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hhcHB5ZnJlZWFuZ2Vs,size_16,color_FFFFFF,t_70

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

开心自由天使

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值