温馨提示×

centos docker装minio吗

小樊
45
2026-09-06 01:00:29
栏目: 智能运维

可以的,在 CentOS 上用 Docker 安装 MinIO 是非常常见、也是官方推荐的方式。下面给你一个从零开始的完整示例(假设你已经装好 Docker)。


一、前提条件

1. 安装 Docker(如果还没装)

# 卸载旧版本(可选)
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

# 安装依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# 添加 Docker 源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 安装 Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io

# 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker

验证:

docker version

二、使用 Docker 安装 MinIO(推荐方式)

1. 创建数据目录

mkdir -p /opt/minio/data
mkdir -p /opt/minio/config

2. 启动 MinIO 容器

docker run -d \
  --name minio \
  -p 9000:9000 \
  -p 9001:9001 \
  -e "MINIO_ROOT_USER=admin" \
  -e "MINIO_ROOT_PASSWORD=Admin123456" \
  -v /opt/minio/data:/data \
  -v /opt/minio/config:/root/.minio \
  --restart=always \
  quay.io/minio/minio server /data --console-address ":9001"

说明:

  • 9000:API 端口(程序访问)
  • 9001:Web 管理控制台端口
  • MINIO_ROOT_USER / MINIO_ROOT_PASSWORD:管理员账号密码(≥8位)

三、访问 MinIO

浏览器打开:

http://<你的CentOS IP>:9001

登录后即可创建 bucket、上传文件。


四、用 Docker Compose 安装(更规范,推荐生产)

1. 安装 docker-compose

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

2. 编写 docker-compose.yml

version: '3.7'

services:
  minio:
    image: quay.io/minio/minio
    container_name: minio
    ports:
      - "9000:9000"
      - "9001:9001"
    environment:
      MINIO_ROOT_USER: admin
      MINIO_ROOT_PASSWORD: Admin123456
    volumes:
      - /opt/minio/data:/data
      - /opt/minio/config:/root/.minio
    command: server /data --console-address ":9001"
    restart: always

3. 启动

docker-compose up -d

五、常见问题

1. 防火墙(CentOS)

firewall-cmd --permanent --add-port=9000/tcp
firewall-cmd --permanent --add-port=9001/tcp
firewall-cmd --reload

2. 云服务器

  • 安全组需放行 9000 / 9001

3. 数据持久化

  • 一定要挂载 /data,否则容器删除数据就没了

如果你愿意,我可以:

  • 帮你 配 HTTPS
  • 帮你 做分布式 MinIO
  • 或结合 Spring Boot / Nginx / 对象存储使用

直接告诉我你的使用场景即可。

0