单机部署minio,设置Nginx代理,配置https(TLS)访问
安装
下载地址: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)访问的更多相关文章
- 使用容器运行的minio配置https(TLS)访问
使用certgen生成证书 下载地址:https://github.com/minio/certgen/releases/tag/v0.0.2 下载地址:https://files.cnblogs.c ...
- 使用docker部署nginx并配置https
我只有一台服务器,但我想在这台服务器上运行多个项目,怎么办? 总不能靠加端口区分吧? 百度和Google是个好东西,于是我找到了答案,使用nginx. 通过nginx,我可以给我的一台服务器配置两个域 ...
- 第十四章 nginx代理配置
一.nginx代理 1.常见模式 1.常见模式:1)正向代理2)反向代理2.区别1)区别在于形式上服务的"对象"不一样2)正向代理代理的对象是客户端,为客户端服务3)反向代理代理 ...
- 【转】Linux下nginx配置https协议访问的方法
一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...
- Linux服务之nginx服务篇四(配置https协议访问)
一.配置nginx支持https协议访问 编译安装nginx的时候需要添加相应的模块--with-http_ssl_module和--with-http_gzip_static_module(可通过/ ...
- nginx代理配置 配置中的静态资源配置,root 和 alias的区别。启动注意事项
这篇主要内容是:nginx代理配置 配置中的静态资源配置,root 和 alias的区别.启动注意事项! 为什么会在window上配置了nginx呢?最近我们的项目是静态资源单独放在一个工程里面,后端 ...
- nginx代理配置 配置中的静态资源配置,root 和 alias的区别
这篇主要内容是:nginx代理配置 配置中的静态资源配置,root 和 alias的区别.启动注意事项! 为什么会在window上配置了nginx呢?最近我们的项目是静态资源单独放在一个工程里面,后端 ...
- Nginx代理配置-centos6.10版
nginx代理配置 cd /etc/nginx/init.d vi default.conf 添加: upstream server1{ server 192.168.125.128:8100 wei ...
- NGINX 代理以及 HTTPS (一)
一. Nginx 安装 和基础代理配置 假如 启动nginx 出现这个错误,可能是 iis服务被打开了,80端口被占用了. 需要如下操作: 用Nginx 配置一个test.com 的代理名称.配置ho ...
随机推荐
- Vite+TS带你搭建一个属于自己的Vue3组件库
theme: nico 前言 随着前端技术的发展,业界涌现出了许多的UI组件库.例如我们熟知的ElementUI,Vant,AntDesign等等.但是作为一个前端开发者,你知道一个UI组件库是如何被 ...
- 159_模型_Power BI 地理分析之形状地图
159_模型_Power BI 地理分析之形状地图 声明以下地图元素仅供学习交流所用,如需地图公开使用请提前做好报审工作. 一.背景 当企业的体量达到一定体量的时候,保持稳定的增长是非常重要的事情.本 ...
- 开发实践丨昇腾CANN的推理应用开发体验
摘要:这是关于一次 Ascend 在线实验的记录,主要内容是通过网络模型加载.推理.结果输出的部署全流程展示,从而快速熟悉并掌握 ACL(Ascend Computing Language)基本开发流 ...
- docker部署练习
三个部署任务 docker部署nginx docker pull nginx #拉取nginx镜像 docker images #检查拉取的镜像 docker run -d -p 3344:80 -- ...
- 流程控制语句continue
continue语句 用于结束当前循环,进入下一次循环,同样通常与if分支结构一起使用 (这边和前面的break可以结合在一起与C中的一样的理解) 注意这个不是终止整个循环只是终止当前循环进行下一次循 ...
- CF Round #808 题解 (Div. 2 ABCD)
后面题太难搞不动 . ABCD 的题解写的好水啊,感觉在写闲话,,, A 若 \(\forall i, a_1\mid a_i\),则可以 . 注意判 \(0\) 的情况 . 提交记录 . B 显而易 ...
- css基础05
无关浏览器,只想对于原来的位置.而且下面的盒子也不会升上去. 没有父亲的时候就是以浏览器为标准的. 父亲没定位,爷爷有定位,就按照爷爷的,不管父亲了. 绝对定位飘起来比浮动还要高.飘起来了它的位置就会 ...
- 使用Django2.0.4集成钉钉第三方扫码登录
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_124 钉钉作为阿里旗下的一款免费移动通讯软件,受众群体越来越多,这里我们使用Django来集成一下钉钉的三方账号登录,首先注册钉钉 ...
- Postman如何通过xmysql工具的Restful API 接口访问MySQL
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 导语 有时候用 Postman 接口测试需要获取MySQL的查询结果做接口输出的校验,这里介绍下 Postman 通过 R ...
- 基于vue2.0原理-自己实现MVVM框架之computed计算属性
基于上一篇data的双向绑定,这一篇来聊聊computed的实现原理及自己实现计算属性. 一.先聊下Computed的用法 写一个最简单的小demo,展示用户的名字和年龄,代码如下: <body ...