【linux】(23)对象存储服务-MinIo
MinIO 是一个高性能的对象存储服务,兼容 Amazon S3 API。
Docker安装MinIo
前提条件
确保您的系统已经安装了 Docker。如果还没有安装 Docker,可以参考 Docker 官方文档进行安装。
1. 拉取 MinIO Docker 镜像
首先,从 Docker Hub 拉取 MinIO 的官方 Docker 镜像:
docker pull minio/minio
2. 创建数据目录
为了持久化存储数据,需要在主机上创建一个目录来存放 MinIO 数据:
mkdir -p /mnt/data/minio
3. 运行 MinIO 容器
使用以下命令启动 MinIO 容器:
docker run -d --name minio \
-p 9000:9000 \
-p 9001:9001 \
-v /mnt/sda/docker/minio:/data \
-e "MINIO_ROOT_USER=wuss" \
-e "MINIO_ROOT_PASSWORD=wu123abc." \
minio/minio server /data --console-address ":9001"
解释:
-d
:以后台模式运行容器。--name minio
:为容器指定名称minio
。-p 9000:9000
:将主机的端口9000
映射到容器的端口9000
(MinIO API 端口)。-p 9001:9001
:将主机的端口9001
映射到容器的端口9001
(MinIO 控制台端口)。-v /mnt/data/minio:/data
:将主机的/mnt/data/minio
目录挂载到容器的/data
目录,以持久化存储数据。-e "MINIO_ROOT_USER=admin"
:设置 MinIO 的 root 用户名。-e "MINIO_ROOT_PASSWORD=admin123"
:设置 MinIO 的 root 用户密码。minio/minio
:使用 MinIO Docker 镜像。server /data --console-address ":9001"
:启动 MinIO 服务器并指定数据目录和控制台地址。
在这里插入图片描述
4. 访问 MinIO 控制台
启动容器后,您可以通过浏览器访问 MinIO 控制台:
- 控制台地址:http://YOUR_SERVER_IP:9001
- 使用您在环境变量中设置的 root 用户名和密码(例如
admin
和admin123
)登录。
5. 验证 MinIO API
您还可以通过 MinIO API 端口访问对象存储服务:
- API 地址:http://YOUR_SERVER_IP:9000
6. 管理和使用 MinIO
登录到 MinIO 控制台后,您可以创建存储桶、上传文件、管理用户和策略等。
示例 Docker Compose 文件(可选)
如果您更喜欢使用 Docker Compose 来管理容器,可以创建一个 docker-compose.yml
文件:
version: '3.8'
services:
minio:
image: minio/minio
container_name: minio
ports:
- "9000:9000"
- "9001:9001"
environment:
MINIO_ROOT_USER: admin
MINIO_ROOT_PASSWORD: admin123
volumes:
- /mnt/data/minio:/data
command: server /data --console-address ":9001"
然后使用以下命令启动 MinIO 服务:
docker-compose up -d
Ubuntu安装MinIo
1. 更新系统包
首先,确保您的系统包是最新的:
sudo apt update
sudo apt upgrade -y
2. 下载 MinIO 二进制文件
从 MinIO 官方网站下载最新的 MinIO 服务器二进制文件:
wget https://dl.min.io/server/minio/release/linux-amd64/minio
3. 安装 MinIO
将下载的 MinIO 二进制文件移动到 /usr/local/bin
目录,并赋予执行权限:
sudo mv minio /usr/local/bin/
sudo chmod +x /usr/local/bin/minio
4. 创建数据目录
为 MinIO 创建一个数据目录:
sudo mkdir -p /mnt/data/minio
5. 创建 MinIO 用户(可选)
为了安全起见,您可以创建一个专门用于运行 MinIO 的用户:
sudo useradd -r minio-user -s /sbin/nologin
然后将数据目录的所有权设置为 minio-user
:
sudo chown -R minio-user:minio-user /mnt/data/minio
6. 创建 MinIO 服务文件
创建一个 systemd 服务文件,以便管理 MinIO 服务:
sudo nano /etc/systemd/system/minio.service
添加以下内容:
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
[Service]
User=minio-user
Group=minio-user
EnvironmentFile=-/etc/default/minio
ExecStart=/usr/local/bin/minio server /mnt/data/minio --console-address ":9001"
Restart=always
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
7. 创建环境变量文件
创建一个环境变量文件,以便设置 MinIO 的配置:
sudo nano /etc/default/minio
添加以下内容:
# MinIO 环境变量
# MinIO 访问密钥和密钥
MINIO_ROOT_USER=admin
MINIO_ROOT_PASSWORD=admin123
# MinIO 数据目录
MINIO_VOLUMES="/mnt/data/minio"
# MinIO 控制台地址
MINIO_OPTS="--console-address :9001"
8. 启动并启用 MinIO 服务
重新加载 systemd 配置,并启动和启用 MinIO 服务:
sudo systemctl daemon-reload
sudo systemctl start minio
sudo systemctl enable minio
9. 验证 MinIO 运行状态
检查 MinIO 服务的状态,确保其正常运行:
sudo systemctl status minio
10. 访问 MinIO 控制台
启动 MinIO 服务后,您可以通过浏览器访问 MinIO 控制台:
- 控制台地址:http://YOUR_SERVER_IP:9001
- 使用您在环境变量中设置的 root 用户名和密码(例如
admin
和admin123
)登录。
11. 配置防火墙(可选)
如果您的 Ubuntu 系统启用了 UFW 防火墙,请确保允许 MinIO 端口通过防火墙:
sudo ufw allow 9000
sudo ufw allow 9001