笔者在工作中需要使用Minio做为OSS服务器,为了方便和不影响系统,mysql、Redis和Minio使用docker-compose安装在同一台linux虚拟机上,MySql和Redis的安装没有什么问题,Minio就折腾了我几个小小时的时候,特别记录一下。最终的Minio Docker-compose的命令编排如下:
minio:
image: minio/minio
hostname: "minio"
ports:
- 9090:9090 # api 端口
- 9091:9091 # 控制台端口
environment:
MINIO_ACCESS_KEY: admin #管理后台用户名
MINIO_SECRET_KEY: admin123 #管理后台密码,最小8个字符
volumes:
- ./minio/data:/data #映射当前目录下的data目录至容器内/data目录
#- ./minio/config:/root/.minio/ #映射配置目录
command: server --console-address ':9091' --address ':9090' /data #指定容器中的目录 /data
privileged: true
restart: always
我安装的时Minio的最新镜像版本,在此版本中,console端口和api端口需要两个,如果在启动命令中没有指定端口,则api端口默认为9000端口,console端口是系统随机指定,每次都不一样,很不方便。通过 --console-address 参数指定管理控制台端口号,--address指定api端口号。
我在安装过程中,修改了端口号,但是重启时使用docker-compose restart命令,导致新修改的端口号没有生效,api端口仍旧时9000,使用docker-compose logs minio命令才发现问题,使用docker-compose stop 后再调用docker-compose up -d 才解决问题。
随便做个记录,希望看到的工程师们少走弯路。