1)拉取镜像
docker pull minio/minio
注意:
该命令默认会下载最新版本的镜像,控制台也变得不再简洁。
2) 运行容器
docker run -d -p 9000:9000 --name minio -e "MINIO_ACCESS_KEY=admin" -e "MINIO_SECRET_KEY=admin123456" -v /mnt/data:/data -v /mnt/config:/root/.minio minio/minio server /data --console-address ":9000" --address ":9090"
注意:
使用原来的命令运行容器会报错:WARNING: Console endpoint is listening on a dynamic port (3101), please use --console-address ":PORT" to choose a static port。
这是docker在提示我们使用静态的固定端口,以避免启动时使用随机端口。但minio一直只用的9000端口,在运行命令中指定了端口映射,为什么还会出现这样的提示呢。
通过docker官网上的镜像介绍,之前只有一个端口。现在有两个了,区分了Console和API两个服务的端口。原来都是共同使用9000,现在需要在启动命令中映射两个端口,然后指定哪个端口做哪项服务。
下载旧版本
1)拉取旧版本镜像
docker pull minio/minio:RELEASE.2021-06-17T00-10-46Z
2)运行容器 (如果要后台运行 加入 -d 参数)
docker run -p 9000:9000 --name minio_old\ -e "MINIO_ACCESS_KEY=admin" \ -e "MINIO_SECRET_KEY=admin12345" \ -v /usr/local/minio/data:/data \ -v /usr/local/minio/config:/root/.minio \ minio/minio:RELEASE.2021-06-17T00-10-46Z server /data
注意:
/usr/local/minio/data // 数据卷存放路径 /usr/local/minio/config //服务配置文件
MinIO 需要一个持久卷来存储配置和应用数据,我们可以简单的传递一个目录如:/data 来启动容器。这个目录会在容器启动时在容器的文件系统中创建,不过所有的数据都会在容器退出时丢失。
我们实际开发中是不可能这样使用的,所以必须使用加入-v 参数 将系统文件 映射到 容器内部对应的文件夹,这样就可以将容器中的数据持久化到磁盘文件中了。
3)进行文件存储
新建一个存储桶,往里面添加一个文件:
上传成功之后,我们去到我们的服务data数据卷存储位置,查看文件是否存在。