温馨提示×

Ubuntu MinIO安装后的启动与测试

小樊
44
2025-12-14 20:18:35
栏目: 智能运维

Ubuntu 上 MinIO 的启动与测试

一 启动方式

  • 使用 Docker 运行(推荐)

    • 准备数据目录并启动容器(API 端口 9000,控制台端口 9001):
      mkdir -p /home/minio/data
      docker run -dt \
        --name minio-server \
        -p 9000:9000 -p 9001:9001 \
        -v /home/minio/data:/data \
        -e "MINIO_ROOT_USER=admin" \
        -e "MINIO_ROOT_PASSWORD=StrongPassw0rd!" \
        minio/minio:RELEASE.2025-04-22T22-12-26Z \
        server /data --console-address ":9001"
      
    • 说明:如需固定版本可指定镜像标签;如为本地开发,也可使用 –network host 简化端口映射。生产环境建议使用强密码并限制来源 IP。
  • 使用 systemd 管理二进制(长期运行与开机自启)

    • 准备环境:
      sudo mkdir -p /data
      sudo chown $USER:$USER /data
      
    • 创建服务文件 /etc/systemd/system/minio.service
      [Unit]
      Description=MinIO Server
      After=network-online.target
      Wants=network-online.target
      
      [Service]
      Type=exec
      User=minio
      Group=minio
      EnvironmentFile=/etc/default/minio
      ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES
      Restart=always
      LimitNOFILE=1048576
      TasksMax=infinity
      
      [Install]
      WantedBy=multi-user.target
      
    • 创建环境配置 /etc/default/minio(示例):
      MINIO_VOLUMES="/data"
      MINIO_OPTS="--address :9000 --console-address :9001"
      MINIO_ROOT_USER="admin"
      MINIO_ROOT_PASSWORD="StrongPassw0rd!"
      
    • 启动与开机自启:
      sudo systemctl daemon-reload
      sudo systemctl enable --now minio
      sudo systemctl status minio
      
    • 说明:二进制方式需提前将 minio 放到 /usr/local/bin 并赋权;生产环境建议创建专用系统用户 minio 并调整目录属主。

二 首次登录与连通性验证

  • 控制台登录
    • 访问 http://<服务器IP或localhost>:9001,使用 MINIO_ROOT_USERMINIO_ROOT_PASSWORD 登录。若浏览器自动跳转到随机端口,说明未显式指定控制台端口,需使用 –console-address “:9001” 重启服务。
  • API 直连与连通性
    • 本地或同机测试:
      curl -I http://127.0.0.1:9000/minio/health/live
      
      返回 200 表示服务存活。远程访问请将 127.0.0.1 替换为服务器 IP 或域名,并确保云服务器安全组/防火墙已放行 9000/9001

三 功能测试 mc 与 S3 客户端

  • 安装 mc(MinIO 客户端)
    curl -O https://dl.min.io/client/mc/release/linux-amd64/mc-20250312180418.0.0-1.x86_64.tar.gz
    tar -xzf mc-*.tar.gz
    sudo mv mc /usr/local/bin/
    
  • 配置别名并执行基础操作
    mc alias set myminio http://<IP>:9000 admin 'StrongPassw0rd!'
    mc ls myminio
    mc mb myminio/test-bucket
    echo "Hello MinIO" > hello.txt
    mc cp hello.txt myminio/test-bucket/
    mc cp myminio/test-bucket/hello.txt ./hello-downloaded.txt
    mc rm myminio/test-bucket/hello.txt
    mc rb myminio/test-bucket
    
  • 说明:上述命令覆盖桶创建、对象上传/下载/删除与桶删除,能充分验证 S3 兼容性 与网络连通性。

四 常见问题与排查

  • 端口与防火墙
    • 确保云服务器安全组/本机防火墙放行 9000(API)与 9001(控制台);浏览器访问控制台使用 http://:9001
  • 权限问题
    • Docker 场景确认挂载目录对容器可读写;二进制+systemd 场景确认 /data 属主与 minio 用户一致。
  • 控制台端口未指定导致随机端口
    • 启动时显式添加 –console-address “:9001”,避免重定向到随机端口。
  • 服务状态与日志
    • 使用 sudo systemctl status minio 查看运行状态与最近日志;Docker 场景使用 docker logs -f minio-server 实时查看容器日志。

0