使用Linux MinIO进行容器化部署主要有两种方式:使用Docker单独部署和使用Kubernetes进行部署。以下是具体的步骤:
docker pull minio/minio:RELEASE.2024-05-20T18-35-36Z
mkdir -p /minio/data
docker run -d \
--name minio \
-p 9000:9000 \
-p 9001:9001 \
--restart=always \
-v /minio/data:/data \
-e "MINIO_ROOT_USER=admin" \
-e "MINIO_ROOT_PASSWORD=YourSecurePass123!" \
quay.io/minio/minio:RELEASE.2024-05-20T18-35-36Z \
server /data --console-address ":9001"
参数解析:
-v /minio/data:/data
:将宿主机目录映射到容器内部实现数据持久化。-e "MINIO_ROOT_USER=admin"
和 -e "MINIO_ROOT_PASSWORD=YourSecurePass123!"
:设置管理员账号密码。server /data
:指定存储目录和运行模式。--console-address ":9001"
:控制台监听端口。访问MinIO控制台:通过浏览器访问 http://<你的IP地址>:9001
,使用步骤3中设置的账号和密码登录。
验证部署:上传文件到MinIO服务,并通过控制台确认上传成功。
minio-deployment.yaml
):apiVersion: apps/v1
kind: Deployment
metadata:
name: minio
spec:
replicas: 1
selector:
matchLabels:
app: minio
template:
metadata:
labels:
app: minio
spec:
containers:
- name: minio
image: minio/minio:RELEASE.2023-09-30T07-02-29Z
ports:
- containerPort: 9000
- containerPort: 9001
volumeMounts:
- name: minio-storage
mountPath: /data
volumes:
- name: minio-storage
persistentVolumeClaim:
claimName: minio-pvc
minio-pvc.yaml
):apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: minio-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
kubectl apply -f minio-deployment.yaml
kubectl apply -f minio-pvc.yaml
访问MinIO控制台:MinIO控制台将在Kubernetes集群的外部IP地址上运行,通常可以通过 kubectl get svc
命令找到服务的外部IP和端口。
验证部署:检查Pod是否正在运行,以及Service是否正常工作。