一.拉取镜像
docker pull minio/minio
二.创建并启动容器
docker run -p 9000:9000 -p 9090:9090 \
--name minio \
-d --restart=always \
-e "MINIO_ACCESS_KEY=admin" \
-e "MINIO_SECRET_KEY=admin123" \
-v /mydata/minio/data:/data \
minio/minio server \
/data --console-address ":9090" -address ":9000"
命令解释:
(1)每行结尾的 \ ,表示命令还没输入完,先不要执行。
(2)-p 容器内部端口绑定到指定的主机端口,9000是minio服务端口,用于服务的链接和请求; 9090是minio客户端端口,用于访问管理界面。
(3)--name 指定容器名称。
(4)--restart=always重启参数,重启docker时自动重启容器。
(5)MINIO_ACCESS_KEY为设置minio登录名,不少于3个字符;MINIO_SECRET_KEY为设置minio登录密码,不少于8个字符。
(6)-v 指定挂载目录,“ : ”前为宿主机目录,“ : ”后为容器中的目录,minio上传的文件默认存储在容器中的/data目录下,若不挂载到宿主机,删除容器则删除文件,若将存储目录挂载到宿主机,删除容器不会删除宿主机挂载目录下的文件。
(7)--console-address 指定客户端端口;-address 指定服务端端口.
三.测试访问
访问http://ip:9090,出现登录页面则部署成功。
四.存储迁移
-v 指定的挂载是绝对路径,默认是挂载到root目录下的。服务运行一段时间后,由于上传文件占用大量资源,导致其他服务无法正常运行,需要将存储目录迁移。
1.查看挂载目录
(1)查看容器id
docker ps
如图,第一列为容器ID,第二列为容器名称。
(2)查看挂载路径
docker inspect 4e8450e2f9e3 | grep Mounts -A 20
如图,是挂载的宿主机目录,接下来要拷贝的就是这个目录
2.拷贝文件
将宿主机原存储路径下的文件拷贝到新存储路径下,
/mydata/minio/data是原路径,/home/mydata/minio/data是新路径
cp -r /mydata/minio/data /home/mydata/minio/data
3.删除原容器,创建并启动新容器
(1)停掉容器
docker stop 容器ID
(2)删除容器
docker rm 容器ID
(3)创建并启动新容器
用前面第二小节介绍的命令创建并启动新容器,注意将挂载目录修改为文件存储的新目录。
容器启动成功后就可以登录管理界面进行验证了,至此,迁移完成。