当前位置: 首页 > article >正文

minio https配置

minio启动时候指定数据目录,配置文件,密钥文件目录,环境文件

1.创建minio用户,专门用于服务启动的
groupadd -r minio-user
useradd -M -r -g minio-user minio-user


2.在当前用户目录下创建minio目录,存储minio相关文件
mkdir minio


在minio目录下创建数据目录和密钥文件目录,和配置文件目录
cd minio
mkdir data
mkdir certs
mkdir conf

在conf目录下创建环境变量文件,初始化控制台访问用户及密码
cd conf
vim .env
添加环境变量:
MINIO_ROOT_USER=minioadmin
MINIO_ROOT_PASSWORD=minioadmin

certs:
将密钥文件复制到该目录下,文件的名称定死
private.key
public.crt

cd conf:配置配置文件
vim config.json

{
  "version": "35",
  "credential": {
    "accessKey": "minio",
    "secretKey": "minio"
  },
  "region": "cn-north-1",
  "logger": {
    "console": {
      "enable": true
    },
    "file": {
      "enable": false,
      "filename": ""
    }
  },
  "storageclass": {
    "standard": "EC:2"
  },
  "api": {
    "port": "9000",
    "https": {
      "enable": true,
      "address": ":9000"
    }
  }
}

授权:chown -R minio-user:minio-user minio

su minio-user
minio ./minio/data --certs-dir ./minio/certs --config-dir ./minio/conf --env-file ./minio/conf/.env


 

如果使用了官网的教程

使用minio-user作为启动用户

准备好:文件名要定死,因为minio只认识key和crt文件

将xxxxx.key重命名为private.key

将xxxxx.pem重命名为public.crt

将这两个文件放到/home/minio-user/.minio/certs/    目录下

chown -r minio-user:minio-user /home/minio-user/.minio   保证执行用户有权限

vim /etc/default/minio

增加秘钥文件位置指定和以https方式启动

MINIO_HTTP_SERVER="https"
MINIO_CERT_FILE="/home/minio-user/.minio/certs/public.crt"
MINIO_KEY_FILE="/home/minio-user/.minio/certs/private.key"

如果需要修改:api端口

MINIO_PORT="443"

代码需要修改三次:

客户端启用https连接:

c, err := minio.New(address, &minio.Options{
   Creds:     credentials.NewStaticV4(conf.GlobalConf.Minio.AccessKey, conf.GlobalConf.Minio.SecurityKey, ""),
   Secure:    true,
   Transport: httpClient.Transport,
   Region:    "cn-north-1",
})

第二个:是否跳过https验证:

httpClient := &http.Client{
   Timeout: 30 * time.Second, // 设置超时时间
   Transport: &http.Transport{
      MaxIdleConns:        10, // 最大空闲连接数
      MaxIdleConnsPerHost: 10, // 每个主机的最大空闲连接数
      IdleConnTimeout:     90 * time.Second,
      TLSClientConfig: &tls.Config{
         InsecureSkipVerify: true, // 忽略证书验证
      },
   },
}

第三个 返回的时候返回https

return fmt.Sprintf("https://%v:%v/%v%v", conf.GlobalConf.Minio.Host, conf.GlobalConf.Minio.Port, bm.BucketName, bm.ObjectName)


http://www.kler.cn/a/507871.html

相关文章:

  • 在 C# 中的Lambda 表达式
  • Re78 读论文:GPT-4 Technical Report
  • 深入理解 Entity、VO、QO、DTO 的区别及其在 MVC 架构中的应用
  • 关于高级工程师的想法
  • C++:工具VSCode的编译和调试文件内容:
  • libcurl编译配置和使用
  • 【Docker】——安装Docker以及解决常见报错
  • 4、dockerfile实现lnmp
  • Python----Python高级(函数式编程,迭代器,生成器,装饰器)
  • Ettercap 入门
  • 基于32QAM的载波同步和定时同步性能仿真,包括Costas环的gardner环
  • 日志收集Day001
  • 高效实现 Markdown 转 PDF 的跨平台指南20250117
  • Android 13 Hotseat定制化修改——001 hotseat布局方向
  • 【混合开发】CefSharp+Vue 解决Cookie问题
  • gitignore忽略已经提交过的
  • 【深度学习基础】线性神经网络 | softmax回归的简洁实现
  • 算法随笔_6: 下一个排列
  • linux 安装PrometheusAlert配置钉钉告警
  • 博客搭建 — GitHub Pages 部署
  • Spark任务提交流程
  • 学习记录1
  • 免费送源码:Java+SpringBoot+MySQL SpringBoot网上宠物领养管理系统 计算机毕业设计原创定制
  • el-table中使用el-image图片预览被其他表格遮挡,使用z-index层级设置无效
  • 从 Web3 到元宇宙:探索数字身份的奇幻演变
  • Sqlmap入门