Minio安装配置,桶权限设置,nginx代理 https minio

**起因:因为用到ruoyi-vue-plus框架中遇到生产环境是https,但是http的minio上传的文件不能在后台系统中访问**

安装配置minio

1. 下载安装

powershell 复制代码
mkdir /usr/local/minio && cd /usr/local/minio && mkdir bin data
cd bin
wget https://dl.min.io/server/minio/release/linux-amd64/minio

2. 赋文件执行权限

powershell 复制代码
cd /usr/local/minio
chmod +x bin/minio 

3.创建配置文件

powershell 复制代码
mkdir conf
cd conf
vim minio.conf

minio.conf配置文件内容

powershell 复制代码
#用户名
MINIO_ROOT_USER="minio"
#密码
MINIO_ROOT_PASSWORD="Admin@1996"
#配置https或者为了不暴露端口再用到
#MINIO_SERVER_URL="https://minio.**.com/"
#MINIO_BROWSER_REDIRECT_URL="https://minio.**.com/web/"

4.创建minio.service

powershell 复制代码
cd /etc/systemd/system
vim minio.service

minio.service内容

powershell 复制代码
[Unit]
Description=Minio
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/minio/bin/minio

[Service]
EnvironmentFile=/usr/local/minio/conf/minio.conf
WorkingDirectory=/usr/local/minio/
PermissionsStartOnly=true
ExecStart=/usr/local/minio/bin/minio server --console-address :9001 /usr/local/minio/data
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

5.服务启动命令

powershell 复制代码
#将服务设置为每次开机启动
systemctl enable minio.service
#启动服务
systemctl start minio
#停止服务
systemctl stop minio
#重启服务
systemctl restrat minio
#查看服务状态
systemctl status minio.service

新版minio创建桶需要配置桶权限

1.下载客户端

powershell 复制代码
wget https://dl.min.io/client/mc/release/linux-amd64/mc -O /usr/local/bin/mc

2.设置访问权限

powershell 复制代码
chmod +x /usr/local/bin/mc

3.连接客户端

powershell 复制代码
mc alias set myminio http://localhost:9000 登陆账号 登陆密码

4.设置桶权限

powershell 复制代码
mc anonymous set download myminio/桶名称

nginx配置https

1.申请创建证书

我使用的证书是通过阿里云申请创建证书,下载Apache格式。网上那些自己申请创建的证书应该也是可以的,没有测试。

2.修改证书文件名(必须修改)

并且把名字修改为private.key和public.crt放在/root/.minio/certs(安装minio自动创建的目录)路径下

3.nginx的https代理参考配置

powershell 复制代码
server {
        listen 443 ssl;
        http2 on;
        server_name  minio.yuming.com; 
        
        ssl_certificate      /www/zuche/cert/minio.yuming.com.pem; #nginx证书文件位置 用的也是阿里的相同证书
        ssl_certificate_key  /www/zuche/cert/minio.yuming.com.key; #nginx证书文件配置 用的也是阿里的相同证书
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
        ssl_prefer_server_ciphers on;

        location / {
            keepalive_timeout  105s;
            proxy_connect_timeout 300s;
            proxy_send_timeout 600s;
            proxy_read_timeout 600s;
            
            client_max_body_size 500m;
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Host $http_host;
            proxy_set_header X-Forwarded-Port $server_port;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_buffering off;
            proxy_pass https://localhost:9000/;
        }
        location /web/ {
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Host $http_host;
            proxy_set_header X-Forwarded-Port $server_port;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_buffering off;
    		proxy_pass https://localhost:9001/;
        }

    }  

    #http forced jump https http强制跳转https配置
    server{  
        listen 80;
        server_name minio.skwl1688.com;
        rewrite ^(.*)$  https://minio.yuming.com/;
        location ~ / {
            index index.html index.php index.htm;
        }
    } 
相关推荐
小卒过河01045 小时前
使用apache nifi 从数据库文件表路径拉取远程文件至远程服务器目的地址
运维·服务器·数据库
Empty_7776 小时前
DevOps理念
运维·devops
叶之香6 小时前
CentOS/RHEL 7、8安装exfat和ntfs文件系统
linux·运维·centos
秋田君6 小时前
前端工程化部署入门:Windows + Nginx 实现多项目独立托管与跨域解决方案
前端·windows·nginx
不过普通话一乙不改名6 小时前
Linux 内核开发入门:从环境配置到 Hello World 实战
linux·运维
Trouvaille ~6 小时前
【Linux】理解“一切皆文件“与缓冲区机制:Linux文件系统的设计哲学
linux·运维·服务器·操作系统·进程·文件·缓冲区
小五传输6 小时前
隔离网闸的作用是什么?新型网闸如何构筑“数字护城河”?
大数据·运维·安全
算力魔方AIPC7 小时前
使用 Docker 一键部署 PaddleOCR-VL: 新手保姆级教程
运维·docker·容器
Evan芙7 小时前
nginx核心配置总结,并实现nginx多虚拟主机
运维·数据库·nginx