阿里云OSS挂载到Linux

0. 阅读本文可以得到什么

  1. 学会使用阿里云OSS挂载到Linux
  2. 支持Linux中启动的Docker容器挂载OSS路径,得到一个使用OSS的容器
  3. 避开LabelStudio挂载数据集的坑

1. 简介

前接LabelStudio上文,图片数据集的加载太慢,购买了OSS,但是发现两处大坑:

  1. 开源版本的LabelStudio无法直接使用阿里云的AWS协议挂载
  2. 在云平台操作OSS直接挂载到ECS实例,每天的费用要几元,比OSS的使用费用还高。

经过一番研究,阿里云官方提供了ossfs挂载工具,可以在Linux上直接挂载为本地磁盘,读写性能可能有损耗,但至少能用!

2. 在云平台配置权限(如果是自有主机则跳过)

  1. 对象存储bucket名称
  1. 角色创建并授权

https://ram.console.aliyun.com/roles 在RAM控制台创建角色,例如oss-manager,配置OSS的 AliyunOSSFullAccess 权限

  1. 角色权限在OSS bucket中配置

https://oss.console.aliyun.com/bucket/oss-cn-beijing/你的bucket名称,注意替换/permission/policy 配置允许特定的服务器或者IP使用,推荐读写权限

2. 安装ossfs

OSSFS官方安装文档

本人成功案例:使用源码安装方式成功在阿里云ECS Ubuntu20系统中成功安装,其它方式缺lib库

2.ossfs配置与挂载命令

  1. 提前在Linux中创建对应目录,例如 /home/label-studio/files/ossfs
arduino 复制代码
mkdir -p /home/label-studio/files/ossfs
  1. 执行ossfs挂载命令
ruby 复制代码
ossfs bucket名称 /home/label-studio/files/具体目录名 -o url=http://oss-cn-beijing.aliyuncs.com -o ram_role=http://100.100.100.200/latest/meta-data/ram/security-credentials/你创建的角色名  -o allow_other 

参数解释

参数解释 复制代码
ossfs \
对象存储bucket名称 \    
/home/label-studio/files/具体目录名  \   # 必须为Linux的绝对路径
-o url=http://oss-cn-beijing.aliyuncs.com \  # OSS创建的区域地
-o ram_role=http://100.100.100.200/latest/meta-data/ram/security-credentials/你创建的角色名  \
-o allow_other 

OSSFS官方配置挂载文档

宿主机确认挂载效果

ls -ll /home/label-studio/files/具体目录名

ruby 复制代码
root@daozi25:/home/label-studio/files# ls -ll
total 13
drwxrwxrwx 1 root     root 4096 Jan  1  1970 ossfs

容器挂载&确认效果

容器启动时挂载加上参数-v /home/label-studio/files/具体目录名:/label-studio/files/具体目录名

bash 复制代码
# 登陆容器查看
docker exec -it 
ls -ll /label-studio/files
# 权限与宿主机结果一致
相关推荐
东风破_6 小时前
从输入 juejin.cn 到看到页面:DNS、Nginx、服务器集群与 CDN 到底在做什么?
后端·mysql
东风破_6 小时前
从 0 设计一个博客数据库:用户、头像与文章表应该怎么建?
后端·mysql
大鸡腿同学6 小时前
黄仁勋点透的 AI 真相:能实现你知道但做不到的,却实现不了你不知道的
后端
FfHUCisI6 小时前
Go 编译过程全景
开发语言·后端·golang
FfHUCisI6 小时前
Golang 语法分析与 AST:Parser 与 go/ast
开发语言·后端·golang
++==9 小时前
RESTful详解:核心思想、框架、与HTTP的区别,API的设计风格
后端·http·restful
IT_陈寒10 小时前
Vue的响应式更新有时候真的不听话
前端·人工智能·后端
向生10 小时前
Ubuntu Caddy 保姆级完整教程
后端
tntxia11 小时前
Docker权限的问题
后端
明月_清风11 小时前
看完这段关于"全插件化架构"的技术分析后,我整理了一份笔记
前端·后端