私有云环境|装在笔记本里的私有云环境:网络存储篇(上)( 四 )


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 的方案,进行集群间快速数据同步。等等...