如何通过docker 部署minio,端口号为9105

通过Docker部署MinIO对象存储服务,并指定API端口为9105,可以按照以下步骤进行。我们将基于已有的资料来详细说明这一过程。

1. 准备工作

首先,确保你的系统上已经安装了Docker。如果没有安装,可以根据官方文档指导完成安装。接下来,创建用于存储MinIO数据和配置文件的目录。这里我们选择在/usr/local/minio下创建两个子目录:data用于存放实际的数据,而config则用来保存MinIO的配置信息。

bash 复制代码
mkdir -p /usr/local/minio/data
mkdir -p /usr/local/minio/config

2. 拉取MinIO镜像

使用docker pull命令从Docker Hub拉取最新的MinIO镜像:

bash 复制代码
docker pull minio/minio

这一步会下载MinIO的官方镜像到本地机器上。

3. 启动MinIO容器

接下来,我们需要运行一个Docker容器来启动MinIO服务。为了满足您提出的将API端口设置为9105的需求,我们将修改默认的端口映射规则。同时,我们还会为控制台分配另一个端口(例如9106),以避免冲突。以下是完整的命令示例:

bash 复制代码
docker run \
  --name minio \
  -p 9105:9000 \ # 将主机的9105端口映射到容器内的9000端口,用于S3 API访问
  -p 9106:9090 \ # 将主机的9106端口映射到容器内的9090端口,用于Web控制台访问
  -d \
  --restart=always \
  -e "MINIO_ROOT_USER=admin" \ # 设置管理员用户名
  -e "MINIO_ROOT_PASSWORD=admin123456" \ # 设置管理员密码
  -v /usr/local/minio/data:/data \ # 挂载数据卷
  -v /usr/local/minio/config:/root/.minio \ # 挂载配置卷
  minio/minio server /data --console-address ":9090" --address ":9000"

在这个命令中,-p 9105:9000表示将宿主机的9105端口映射到容器内部的9000端口,这是MinIO提供S3兼容API服务的地方;而-p 9106:9090则是将宿主机的9106端口映射到容器内的9090端口,供MinIO Web控制台使用。此外,我们还设置了自动重启策略(--restart=always),以便在Docker服务重启时自动恢复MinIO容器。

4. 验证部署

一旦容器成功启动,你可以通过浏览器访问http://<your-server-ip>:9106来打开MinIO的Web界面,并使用之前设置的用户名和密码登录。对于API请求,则可以通过http://<your-server-ip>:9105来进行。

5. 注意事项

  • 端口冲突:确保所选端口(如9105和9106)没有被其他应用程序占用。
  • 安全性:考虑到安全因素,建议启用SSL/TLS加密,并且不要在生产环境中使用简单的默认凭证。
  • 持久化存储 :上述命令中的-v选项用于将容器内的路径与宿主机上的目录关联起来,从而实现数据的持久化。
  • 环境变量 :请注意,较新的MinIO版本推荐使用MINIO_ROOT_USERMINIO_ROOT_PASSWORD代替旧版中的MINIO_ACCESS_KEYMINIO_SECRET_KEY来定义访问凭证。

通过以上步骤,你应该能够顺利地通过Docker部署MinIO,并将其API端口设置为9105。如果遇到任何问题或有进一步的需求,请参考官方文档或其他社区资源获取帮助。

相关推荐
皮皮林5513 小时前
Java性能调优黑科技!1行代码实现毫秒级耗时追踪,效率飙升300%!
java
冰_河3 小时前
QPS从300到3100:我靠一行代码让接口性能暴涨10倍,系统性能原地起飞!!
java·后端·性能优化
桦说编程6 小时前
从 ForkJoinPool 的 Compensate 看并发框架的线程补偿思想
java·后端·源码阅读
蝎子莱莱爱打怪8 小时前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes
躺平大鹅8 小时前
Java面向对象入门(类与对象,新手秒懂)
java
初次攀爬者9 小时前
RocketMQ在Spring Boot上的基础使用
java·spring boot·rocketmq
花花无缺9 小时前
搞懂@Autowired 与@Resuorce
java·spring boot·后端
Derek_Smart10 小时前
从一次 OOM 事故说起:打造生产级的 JVM 健康检查组件
java·jvm·spring boot
NE_STOP11 小时前
MyBatis-mybatis入门与增删改查
java