Oryx支持录制到AWS、Azure、DigitalOcean Space等S3兼容的存储上
s3fs 让您像本地文件系统一样操作 S3 存储桶中的文件和目录
minio兼容S3

所以可以使用s3fs将minio的桶映射到本机目录上,然后将Oryx的录制目录指向这个映射的目录,就能做到自动将Oryx录制的直播文件存储到minio上

下面以Ubuntu系统为例

安装s3fs

1
sudo apt install s3fs

映射minio的桶到本机目录

1
2
3
4
5
6
# minio凭证信息
echo "SERVICE_ID:SERVICE_KEY" > /home/user/.s3creds
chmod 600 .s3creds

# 将minio桶映射到本机目录,这里以桶名称my-bucket-name为例,映射到本机的/mnt/mynewbucket目录
sudo s3fs my-bucket-name /mnt/mynewbucket -o passwd_file=/home/user/.s3creds,use_path_request_style,url=https://FQDN-hostname:9000

如果有什么问题可以使用加上-o dbglevel=info -f -o curldbg查看debug映射日志:

1
sudo s3fs my-bucket-name /mnt/mynewbucket -o passwd_file=/home/user/.s3creds,use_path_request_style,url=https://FQDN-hostname:9000 -o dbglevel=info -f -o curldbg

可以使用下面命令查看桶中的文件,如果能正确列出桶中的文件则说明一切正常:

1
ls -lh /mnt/mynewbucket

配置Oryx录制文件

在Oryx的录制中,选择设置录制规则 > 录制后处理 > 拷贝录制文件,输入文件夹/mnt/mynewbucket,这样在录制生成文件后, 就会将录制文件拷贝到S3存储了,如果是docker启动的Oryx,可以将docker中的录制目录映射出来-v /mnt/mynewbucket:/data/srs-s3-bucket

开始录制,然后停止录制,过一会文件便会保存到minio中