装在笔记本里的私有云环境:网络存储篇(上)( 四 )
MinIO 主应用配置:docker-compose.ymlMinIO 初始化使用的客户端配置: docker-compose.init.yml为了方便维护而编写的 MinIO 环境变量配置:.env
作为用户,其实只需要关注最后一个 .env 文件即可:
# == MinIO# optional: Set a publicly accessible domain name to manage the content stored in OutlineDOCKER_MINIO_IMAGE_NAME=minio/minio:RELEASE.2021-11-03T03-36-36ZDOCKER_MINIO_HOSTNAME=s3.storage.lab.comDOCKER_MINIO_ADMIN_DOMAIN=s3.console.storage.lab.comMINIO_BROWSER=onMINIO_BROWSER_REDIRECT_URL=https://${DOCKER_MINIO_ADMIN_DOMAIN}# Select `Lowercase a-z and numbers` and 16-bit string length https://onlinerandomtools.com/generate-random-stringMINIO_ROOT_USER=6m2lx2ffmbr9ikod# Select `Lowercase a-z and numbers` and 64-bit string length https://onlinerandomtools.com/generate-random-stringMINIO_ROOT_PASSWORD=2k78fpraq7rs5xlrti5p6cvb767a691h3jqi47ihbu75cx23twkzpok86sf1aw1eMINIO_REGION_NAME=cn-homelab-1# == MinIO ClientDOCKER_MINIO_CLIENT_IMAGE_NAME=minio/mc:RELEASE.2021-09-02T09-21-27ZDEFAULT_S3_UPLOAD_BUCKET_NAME=public
你可以根据自己的需求,修改这个配置里定义的“访问域名”、“管理域名”、“管理员账号、管理员密码、Bucket” 等应用需要使用的配置。在修改完毕之后,先执行 docker-compose up -d,启动 MinIO 主应用。
使用 docker-compose logs -f 查看日志,能够看到类似下面的日志,则说明应用启动正常:
minio| API: http://172.18.0.2:9000http://127.0.0.1:9000 minio| minio| Console: https://s3.console.storage.lab.com minio| minio| Documentation: https://docs.min.io
接着执行 docker-compose -f docker-compose.init.yml up ,如果没有意外,你将会看到类似下面的内容:
minio-minio-client-1| Removed `local` successfully.minio-minio-client-1| Added `local` successfully.minio-minio-client-1| Bucket created successfully `local/public/`.minio-minio-client-1| Access permission for `local/public` is set to `public`minio-minio-client-1 exited with code 0
则应用初始化完毕,在浏览器中打开 https://s3.console.storage.lab.com/ ,使用配置中的账号密码登陆,就能够看到 MinIO 的控制台啦,因为目前我们还没有上传内容,所以只能看到我们刚刚初始化时创建的一个用户,以及一个全局公开的储存桶。
文章插图
从左侧的导航菜单选择 Bucket,可以看到我们刚刚初始化的存储桶(Bucket),点击红色的浏览按钮(这里的交互颜色欠妥),就可以进入在线的对象管理工具啦。
文章插图
这里可以理解为一个简单的在线“网盘”,我们可以在这里随便上传一张图片。
文章插图
接着在浏览器或者应用里,就可以使用之前配置服务域名来访问这个资源啦:
# 访问格式: 服务域名/存储桶名称/文件名称http://s3.storage.lab.com/public/rj5k3y73.jpeg# 或者https://s3.storage.lab.com/public/rj5k3y73.jpeg
如果你希望不同的应用之间的文件可以充分隔离,可以在侧边栏选择“用户”菜单,然后为不同的用户创建属于它们自己的用户。
文章插图
搭建同步应用:Syncthing在日常使用过程中,我们经常会遇到需要向不同设备分发数据的需求,这里的思路有很多种:
使用脚本批量调用 SCP 、Rsync 命令进行 “1toN” 的操作。使用 curl、wget 等方式从目标服务器反向从源服务器下载数据。使用 CI/CD 的方案,通过 Agent 的方式向不同的服务器执行命令,进行同步(本质同上面两条)。或者使用本文使用的 P2P 的方案,进行集群间快速数据同步。等等...
之所以考虑选择 Syncthing,是因为它可以使用 P2P 的方案进行多机之间的数据同步。理论来说,你可以通过水平扩展机器节点,来成倍的提升数据传输速度。比如下图的示例中,向服务器分发数据,因为有7个节点,所以极限状况下,可以提升 6倍以上的速度。而且,如果你家里有独立的 NAS 设备,这个方案也可以方便快速的将你计划长期存储的数据进行快速的迁移。
- 架构设计|6G发展再迎里程碑 网络架构设计获突破
- 阿里巴巴|电商转折点出现?神秘消失23天的李佳琦,意外暴露了阿里的问题
- 往宇航员的血管里种藻类,科学家这个想法太疯狂,来看结果怎么样
- 和真的几乎一样,这个仿生蜻蜓,要实现《沙丘》里的扑翼机了
- 移动通信网络|6G发展再迎里程碑 网络架构设计获突破
- 腾讯|推荐6款免费软件,上班族最好放在电脑里
- 为什么同学群里,很少有人说话,大部分人都选择沉默或者屏蔽?
- 显卡|如何组装旗舰游戏电脑?这里有你想要的答案
- 笔记本|双芯协同!上手Reno8 Pro花仙紫,氛围感人像神器稳了
- 快手视频|视频号和抖音快手的差异化在哪里呢?你应该如何选择适合你的平台
