alpine挂载 阿里云oss 腾讯cos 亚马逊s3 等对象储存方法

alpine 轻量,适合很多场景使用。但是目前除了很多人用他来做docker基础镜像之外,还是小众了一些。所以很多软件包没有提供编译好的安装包。 而alpine的官方仓库,一直控制在10000以内,所以…

比如 阿里云的 ossfs 腾讯的 cosfs 都不行,连s3fs 也没有。。。

自己编译??? 要装一堆依赖,,,(其实 可以docker里面编译完了删除就行)不符合 我们需求.. 还是用rclone吧。 可以用国产的alist cloudreve,我这个场景更适合rclone,因为我只是同步备份数据,不做本地储存用。

安装获取

1
2
3
4
apk add unzip wget
wget https://downloads.rclone.org/v1.61.1/rclone-v1.61.1-linux-amd64.zip
unzip rclone-v1.61.1-linux-amd64.zip
mv rclone-v1.61.1-linux-amd64/rclone .

rclone默认的配置文件 是在 ~/.config/rclone/rclone.conf ,你可以用命令 查看 rclone config paths

我这里手动指定 ./rclone config --config /root/rclone.conf 是进入交互引导模式 帮你创建储存点。简单点

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
cat > /root/rclone.conf << EOF
[oss]
type = s3
provider = Alibaba
access_key_id = 你的access_key_id
secret_access_key = 你的secret_access_key
endpoint = oss-cn-地区.aliyuncs.com
acl = public-read
storage_class = STANDARD
bucket_acl = public-read
EOF

测试

1
2
3
4
5
#./rclone ls oss:你的存储桶名称  --config /root/rclone.conf #列出所有文件
./rclone lsd oss:你的存储桶名称  --config /root/rclone.conf #列出指定的目录的子目录
./rclone lsf oss:你的存储桶名称  --config /root/rclone.conf #列出文件个目录的文件和目录
./rclone copy /root/rclone.conf  oss:你的存储桶名称/  --config /root/rclone.conf  # 复制一个文件
./rclone lsf oss:你的存储桶名称 --config /root/rclone.conf

腾讯cos 和 亚马逊s3 同理

rclone 还内置 删除 sync 等操作 ,具体 ./rcone -h 查看

挂载到本地

1
2
apk add fuse  # 必须的,如果你在容器里面,宿主和容器 都要有fuse权限
rclone mount cos:/你的存储桶名称/子目录或者不需要  /mnt/本地挂载路径 --no-check-certificate --allow-other --allow-non-empty

还有其他一些更丰富的参数 这里不说了

开机自动挂载?

rc-local 处理就好了。

Licensed under CC BY-NC-SA 4.0
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计