安装

下载地址:https://dl.min.io/

# 创建目录
mkdir -p /usr/local/minio/{data,bin,etc} # 下载minio
wget https://dl.min.io/server/minio/release/linux-amd64/minio -P /usr/local/minio/bin/ # 授予minio文件执行权限
cd /usr/local/minio/bin && chmod +x minio # 创建minio用户
useradd -s /sbin/nologin -d /var/lib/minio minio # 更改minio相关目录、文件的所有者、所有组
chown -R minio:minio /usr/local/minio/ # 创建配置文件:/usr/local/minio/etc/minio.conf
MINIO_VOLUMES="/usr/local/minio/data"
#端口:默认9000
MINIO_OPTS="--address ':9000' --console-address ':9001' --config-dir /usr/local/minio/etc/"
#登录名
#MINIO_ACCESS_KEY=minio #过期配置
MINIO_ROOT_USER=minio
#登录密码
#MINIO_SECRET_KEY=minio #过期配置
MINIO_ROOT_PASSWORD=minio # 创建service文件:/etc/systemd/system/minio.service
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/minio/bin/minio
[Service]
# User and group
User=minio
Group=minio
EnvironmentFile=/usr/local/minio/etc/minio.conf
ExecStart=/usr/local/minio/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
# Let systemd restart this service always
Restart=always
# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=65536
# Disable timeout logic and wait until process is stopped
TimeoutStopSec=infinity
SendSIGKILL=no
[Install]
WantedBy=multi-user.target # 重新加载、生效minio.service文件(以上两个文件配置发生变更后需要执行)
systemctl daemon-reload # 启动、关闭、查看进程状态、开机启动
systemctl start minio
systemctl stop minio
systemctl status minio
systemctl enable minio.service # 防火墙放行端口:9000
firewall-cmd --zone=public --add-port=9000/tcp --permanent
firewall-cmd --zone=public --add-port=9001/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports # 查看minio服务日志
journalctl -u minio.service # 倒序查看日志
journalctl -r -u minio.service # 查看时间段内的服务日志
journalctl --since "2020-01-01 20:00:00" --until "2020-02-01 20:15:00"

为MinIO Server设置Nginx代理

参考文档:http://docs.minio.org.cn/docs/master/setup-nginx-proxy-with-minio

参考另一篇文章:https://www.cnblogs.com/sanduzxcvbnm/p/15988362.html

注:nginx和minio是安装在同一系统上的

修改nginx配置文件 /usr/local/nginx/conf/nginx.conf

    upstream minio_gateway {
server 127.0.0.1:9000 weight=1 max_fails=2 fail_timeout=10s;
} server {
listen 19000;
server_name localhost:19000;
location / {
proxy_set_header Host $http_host;
proxy_pass http://minio_gateway; }
}

我这边对外提供访问minio的端口号是19000,当浏览器访问 IP:19000 时,nginx会代理转发给 minio_gateway (即 localhost:9000)

登录账号名、密码 见 /usr/local/minio/etc/minio.conf 中的 MINIO_ROOT_USER、MINIO_ROOT_PASSWORD

配置Minio服务使用TLS

# 查看本机ip
# ip addr
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:6a:65:07 brd ff:ff:ff:ff:ff:ff
inet 192.168.20.102/24 brd 192.168.20.255 scope global noprefixroute dynamic ens32
valid_lft 1547sec preferred_lft 1547sec
inet6 fe80::45cc:6455:6bb0:4d86/64 scope link noprefixroute
valid_lft forever preferred_lft forever 我的IP是:192.168.20.102 # 编辑文件 /etc/pki/tls/openssl.cnf
找到[ v3_ca ],新增一行: subjectAltName=IP:192.168.20.102 # 不编辑openssl.cnf文件的后果就是:minio控制台登录不了 # 创建目录/usr/local/minio/etc/certs 后进入,如果已存在可直接进入,在当前目录使用 OpenSSL 来生成私钥文件和自签名证书 生成私钥: openssl genrsa -out private.key 2048
生成自签名证书: openssl req -new -x509 -days 3650 -key private.key -out public.crt -subj "/C=US/ST=state/L=location/O=organization/CN=domain" 最后检查/usr/local/minio/etc/certs目录是否属于minio:minio,如果不是就需要执行以下命令: chown -R minio:minio /usr/local/minio/etc/certs # 重新启动minio
systemctl restart minio

单机部署minio,设置Nginx代理,配置https(TLS)访问的更多相关文章

  1. 使用容器运行的minio配置https(TLS)访问

    使用certgen生成证书 下载地址:https://github.com/minio/certgen/releases/tag/v0.0.2 下载地址:https://files.cnblogs.c ...

  2. 使用docker部署nginx并配置https

    我只有一台服务器,但我想在这台服务器上运行多个项目,怎么办? 总不能靠加端口区分吧? 百度和Google是个好东西,于是我找到了答案,使用nginx. 通过nginx,我可以给我的一台服务器配置两个域 ...

  3. 第十四章 nginx代理配置

    一.nginx代理 1.常见模式 1.常见模式:1)正向代理2)反向代理​2.区别1)区别在于形式上服务的"对象"不一样2)正向代理代理的对象是客户端,为客户端服务3)反向代理代理 ...

  4. 【转】Linux下nginx配置https协议访问的方法

    一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...

  5. Linux服务之nginx服务篇四(配置https协议访问)

    一.配置nginx支持https协议访问 编译安装nginx的时候需要添加相应的模块--with-http_ssl_module和--with-http_gzip_static_module(可通过/ ...

  6. nginx代理配置 配置中的静态资源配置,root 和 alias的区别。启动注意事项

    这篇主要内容是:nginx代理配置 配置中的静态资源配置,root 和 alias的区别.启动注意事项! 为什么会在window上配置了nginx呢?最近我们的项目是静态资源单独放在一个工程里面,后端 ...

  7. nginx代理配置 配置中的静态资源配置,root 和 alias的区别

    这篇主要内容是:nginx代理配置 配置中的静态资源配置,root 和 alias的区别.启动注意事项! 为什么会在window上配置了nginx呢?最近我们的项目是静态资源单独放在一个工程里面,后端 ...

  8. Nginx代理配置-centos6.10版

    nginx代理配置 cd /etc/nginx/init.d vi default.conf 添加: upstream server1{ server 192.168.125.128:8100 wei ...

  9. NGINX 代理以及 HTTPS (一)

    一. Nginx 安装 和基础代理配置 假如 启动nginx 出现这个错误,可能是 iis服务被打开了,80端口被占用了. 需要如下操作: 用Nginx 配置一个test.com 的代理名称.配置ho ...

随机推荐

  1. 160_技巧_Power BI 新函数-计算工作日天数

    160_技巧_Power BI 新函数-计算工作日天数 一.背景 Power BI 2022 年 7 月 14 日更新了最新版本的,版本号为:2.107.683.0 . 更多更新内容可以查看官方博客: ...

  2. day10 Map_查找与遍历

    Map 查找表 Map体现的结构是一个多行两列的表格,其中左列称为key,右列称为value. Map总是成对保存数据,并且总是根据key获取对应的value.因此我们可以将查询的条件作为key查询对 ...

  3. 揭开服务网格~Istio Service Mesh神秘的面纱

    目录 一.写在前面 二.微服务与K8S 三.服务网格与K8S 四.常见的产品 五.Istio架构 六.Istio的核心资源介绍 6.1.VirtualService 6.2.Destination R ...

  4. Codeforces 缺省源

    #include <cstdio> #include <algorithm> #include <vector> using namespace std; type ...

  5. CF1703A YES or YES? 题解

    题意:输入一个长度为 \(3\) 的字符串,判断其是否为 \(YES\),忽略大小写. 做法:输入字符串,直接判断. #include<cstdio> #include<iostre ...

  6. 平衡树——splay 一

    splay 一种平衡树,同时也是二叉排序树,与treap不同,它不需要维护堆的性质,它由Daniel Sleator和Robert Tarjan(没错,tarjan,又是他)创造,伸展树是一种自调整二 ...

  7. for(int i=0;i<1000;i++)与 for(int i=1;i<=1000;i++)。 if ( i%500){}//前者表示0-501一个循环,后者1-500一个循环

    `package com.Itbz; import java.sql.Connection; import java.sql.PreparedStatement; /** 向mysql数据库批量添加数 ...

  8. BZOJ2286/Luogu2495 [Sdoi2011]消耗战 (虚树)

    // never forget open "Head.cpp", boy, never ! #include <iostream> #include <cstdi ...

  9. 清晰梳理最全日志框架关系与日志配置-SpringBoot 2.7.2 实战基础

    优雅哥 SpringBoot 2.7.2 实战基础 - 07 - 日志配置 Java 中日志相关的 jar 包非常多,log4j.log4j2.commons-logging.logback.slf4 ...

  10. 百亿数据百亿花, 库若恒河沙复沙,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang数据库操作实践EP12

    Golang可以通过Gorm包来操作数据库,所谓ORM,即Object Relational Mapping(数据关系映射),说白了就是通过模式化的语法来操作数据库的行对象或者表对象,对比相对灵活繁复 ...