您现在的位置是: 首页 >  服务器 服务器

Docker部署Minio控制台域名访问和https

冬寂 2023-02-16 10:25:28 【服务器】 2818人已围观

· Docker部署Minio控制台域名访问和https

· Docker部署Minio 启用HTTPS

一、问题描述


参考官方文档https://docs.min.io/docs/minio-docker-quickstart-guide.html,通过Docker部署Minio,当添加 MINIO_SERVER_URL 的环境变量后控制台登录就会报错提示 Invalid Login ,如图1

Docker部署命令:

宿主机新建文件夹:

mkdir -p /minio/data

运行容器

docker run -d \   -p 9000:9000 \   -p 9001:9001 \   --name minio1 \   -v /minio/data:/data \   -e "MINIO_ROOT_USER=admin" \   -e "MINIO_ROOT_PASSWORD=Orcy0net0cn" \   -e "MINIO_SERVER_URL=http://yustone.cn:9000" \   --restart unless-stopped \   quay.io/minio/minio server /data  --console-address ":9001"

其中,我的域名为 http://yustone.com 用户名为“admin”,密码为“Orcy0net0cn”

二、解决办法

执行以下命令进入容器:

[root@localhost ~]# docker exec -it minio1 bash

在容器中执行

[root@546ec4880a44 /]# echo "127.0.0.1 yustone.com" >> /etc/hosts

MINIO_SERVER_URL环境变量为域名

此时重新打开登录页面,就可以正常登录控制台了


问题分析:可能是域名登录的时候容器里边的系统并不知道这个域名对应主机地址是什么,或者这个域名对应的IP地址并不是容器自身的IP,才会导致登录失败,通过在容器的hosts添加一条记录,将它指向127.0.0.1后,就可以正常登录了。

三、启用HTTPS

(1)上传证书

如果之前已经创建容器,先删除

docker rm -f minio1

在宿主机创建存放SSL证书文件夹

mkdir -p /minio/certs

将SSL证书上传到此路径中,重命名证书为 public.crt ,私钥为 private.key

证书申请略




(2)启动容器

执行以下命令启动容器

docker run -d \-p 9000:9000 \-p 9001:9001 \--name minio1 \-v /minio/data:/data \-v /minio/certs:/tmp/certs \-e "MINIO_ROOT_USER=admin" \-e "MINIO_ROOT_PASSWORD=Orcy0net0cn" \-e "MINIO_SERVER_URL=https://yustone.cn:9000" \-e "MINIO_BROWSER_REDIRECT_URL=https://yustone:9001" \quay.io/minio/minio server /data  --console-address ":9001" --certs-dir /tmp/certs

(3)解决Invalid Login问题

进入容器

[root@localhost ~]# docker exec -it minio1 bash

容器中执行以下命令

[root@546ec4880a44 /]# echo "127.0.0.1 yustone.com" >> /etc/hosts

此时用浏览器打开 https://yustone.com:9001 正常登录即可

很赞哦! ( 35 )

站点信息

  • 建站时间:2020-08-10
  • 文章统计100篇文章
  • 标签管理标签云
  • 统计数据百度统计
  • 微信公众号:扫描二维码,关注我