docker(七)安装minio
minio官网:https://docs.min.io/docs/minio-docker-quickstart-guide.html
查询相关镜像
docker search minIO
[root@sulong ~]# docker search minIO
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
bitnami/minio Bitnami MinIO Docker Image 77
bitnami/minio-client Bitnami MinIO Client Docker Image 11
rancher/minio-minio 1
ibmcom/minio 0
ibmcom/minio-mc 0
bitnamicharts/minio 0
ibmcom/minio-amd64 0
ibmcom/minio-mc-amd64 0
ibmcom/minio-ppc64le 0
ibmcom/minio-mc-ppc64le 0
ibmcom/minio-mc-s390x 0
ibmcom/minio-s390x 0
corpusops/minio https://github.com/corpusops/docker-images/ 0
longhornio/minio 0
drud/minio 0
hephy/minio 0
silintl/minio-default-server 0
corpusops/minio-k8s-operator https://github.com/corpusops/docker-images/ 0
corpusops/minio-mint https://github.com/corpusops/docker-images/ 0
corpusops/minio-doctor https://github.com/corpusops/docker-images/ 0
newrelic/synthetics-minion Synthetics Containerized Private Minion 5
drud/minio-exporter 0
minio/minio Multi-Cloud Object Storage 676 [OK]
minio/mc Minio Client (mc) provides a modern alternat… 40 [OK]
minio/console A graphical user interface for MinIO server 15
[root@sulong ~]#
拉取镜像
docker pull minio/minio
创建容器卷和启动容器
创建文件目录
[root@sulong home]# mkdir -p minio/data
[root@sulong home]# mkdir -p minio/config
docker run -p 9000:9000 -p 9090:9090 \
--name minio \
-d --restart=always \
-e "MINIO_ACCESS_KEY=admin" \
-e "MINIO_SECRET_KEY=你的密码" \
-v /home/minio/data:/data \
-v /home/minio/config:/root/.minio \
minio/minio server\
/data --console-address ":9090" -address ":9000"
说明:
- 这里的9090端口指的是minio的客户端端口。虽然设置9090,但是我们在访问9000的时候,他也会自动跳到9090。
- 9000端口是minio的服务端端口,我们程序在连接minio的时候,就是通过这个端口来连接的。
- -v就是docker run当中的挂载,这里的/root/docker/minio/data:/data意思就是将容器的/data目录和宿主机的/root/docker/minio/data目录做映射,这样我们想要查看容器的文件的时候,就不需要看容器当中的文件了。
- 注意在执行命令的时候,他是会自动在宿主机当中创建目录的。我们不需要手动创建。
- minio所上传的文件默认都是存储在容器的data目录下的!
- 假如删除容器了宿主机当中挂载的目录是不会删除的。假如没有使用-v挂载目录,那他在宿主机的存储位置的文件会直接删除的。
- 宿主机的挂载目录一定是根目录,如果是相对路径会有问题。还有容器当中的目录也是必须是绝对路径(根路径就是带/的)。
- 所谓的挂载其实就是将容器目录和宿主机目录进行绑定了,操作宿主机目录,容器目录也会变化,操作容器目录,宿主机目录也会变化。这样做的目的 可以间接理解为就是数据持久化,防止容器误删,导致数据丢失的情况。
- MINIO_ACCESS_KEY:账号 MINIO_SECRET_KEY:密码 (正常账号应该不低于3位,密码不低于8位,不然容器会启动不成功)
- –console-address 指定客户端端口
- -d --restart=always 代表重启linux的时候容器自动启动
- –name minio 容器名称
参考链接:https://blog.csdn.net/qq_44732146/article/details/126841141
测试验证
浏览器输入:ip:9000进行访问