阿里云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
# 权限与宿主机结果一致
相关推荐
洛神灬殇4 分钟前
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
数据库·redis·后端
雷渊37 分钟前
DDD经典的四层架构和洋葱架构、六边形架构区别
后端
SimonKing39 分钟前
【Spring Boot配置终极指南】1分钟让你精准指定配置文件,使应用部署游刃有余!
java·后端
雷渊39 分钟前
深入分析理解洋葱架构
后端
程序媛学姐1 小时前
SpringBoot Actuator健康检查:自定义HealthIndicator
java·spring boot·后端
程序媛学姐1 小时前
SpringBoot Actuator指标收集:Micrometer与Prometheus集成
spring boot·后端·prometheus
欲儿1 小时前
RabbitMQ原理及代码示例
java·spring boot·后端·rabbitmq
林 子1 小时前
Spring Boot自动装配原理(源码详细剖析!)
spring boot·后端
编程轨迹1 小时前
使用 Spring 和 Redis 创建处理敏感数据的服务
后端
未完结小说2 小时前
服务注册与发现(nacos)
后端