CentOS7 使用Docker安装MinIO完整教程

发布于:2025-08-02 ⋅ 阅读:(17) ⋅ 点赞:(0)

目录

1. MinIO简介

什么是MinIO?

为什么选择Docker安装?

2. 环境准备

检查Docker状态

检查防火墙设置

创建存储目录

3. 快速启动MinIO

基础启动命令

验证启动状态

4. 配置持久化存储

停止并删除临时容器

使用数据卷启动MinIO

验证数据持久化

5. 访问MinIO控制台

通过浏览器访问

本地访问(如果在本机安装)

控制台功能介绍

6. 高级配置

使用Docker Compose管理

配置SSL/HTTPS(可选)

环境变量配置

7. 管理和维护

常用Docker命令

数据备份

设置开机自启动

8. 常见问题解决

问题1:无法访问Web控制台

问题2:权限不足错误

问题3:容器意外停止

问题4:忘记管理员密码

问题5:升级MinIO版本

总结


1. MinIO简介

什么是MinIO?

MinIO是一个高性能的对象存储服务,兼容Amazon S3 API。简单来说,它就像一个私有云盘,可以让你:

  • 存储文件、图片、视频等任何数据
  • 通过网页界面管理文件
  • 为应用程序提供文件存储服务
  • 支持分布式部署,数据安全可靠

为什么选择Docker安装?

  • 简单快捷:一条命令就能启动
  • 环境隔离:不会影响系统其他服务
  • 易于管理:启动、停止、删除都很方便
  • 版本控制:可以轻松切换不同版本

2. 环境准备

检查Docker状态

首先确认Docker已经安装并正在运行:

# 检查Docker版本
docker --version

# 检查Docker服务状态
systemctl status docker

# 如果Docker没有启动,执行以下命令
sudo systemctl start docker
sudo systemctl enable docker

检查防火墙设置

MinIO默认使用9000和9001端口,需要确保这些端口可以访问:

# 查看防火墙状态
firewall-cmd --state

# 如果防火墙开启,需要开放端口
sudo firewall-cmd --zone=public --add-port=9000/tcp --permanent
sudo firewall-cmd --zone=public --add-port=9001/tcp --permanent
sudo firewall-cmd --reload

# 验证端口是否开放
firewall-cmd --zone=public --list-ports

创建存储目录

为MinIO数据创建专门的目录:

# 创建MinIO数据目录
sudo mkdir -p /opt/minio/data
sudo mkdir -p /opt/minio/config

# 设置目录权限(重要!)
sudo chmod 755 /opt/minio/data
sudo chmod 755 /opt/minio/config

3. 快速启动MinIO

基础启动命令

使用以下命令快速启动MinIO:

docker run -p 9000:9000 -p 9001:9001 \
  --name minio \
  -e "MINIO_ROOT_USER=admin" \
  -e "MINIO_ROOT_PASSWORD=password123" \
  quay.io/minio/minio server /data --console-address ":9001"

命令解释:

  • -p 9000:9000:映射API端口(用于程序访问)
  • -p 9001:9001:映射Web控制台端口(用于网页管理)
  • --name minio:给容器命名为minio
  • -e "MINIO_ROOT_USER=admin":设置管理员用户名为admin
  • -e "MINIO_ROOT_PASSWORD=password123":设置管理员密码
  • server /data:启动服务器,数据存储在/data目录
  • --console-address ":9001":指定控制台端口

验证启动状态

# 查看容器运行状态
docker ps

# 查看MinIO日志
docker logs minio

# 如果一切正常,你会看到类似输出:
# MinIO Object Storage Server
# Copyright: 2015-2023 MinIO, Inc.
# API: http://172.17.0.2:9000  http://127.0.0.1:9000
# Console: http://172.17.0.2:9001 http://127.0.0.1:9001

4. 配置持久化存储

上面的快速启动方法有个问题:容器删除后数据就丢失了。让我们配置持久化存储:

停止并删除临时容器

# 停止容器
docker stop minio

# 删除容器
docker rm minio

使用数据卷启动MinIO

docker run -d \
  -p 9000:9000 \
  -p 9001:9001 \
  --name minio \
  -v /opt/minio/data:/data \
  -v /opt/minio/config:/root/.minio \
  -e "MINIO_ROOT_USER=admin" \
  -e "MINIO_ROOT_PASSW

网站公告

今日签到

点亮在社区的每一天
去签到