如何通过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。如果遇到任何问题或有进一步的需求,请参考官方文档或其他社区资源获取帮助。

相关推荐
若鱼19191 分钟前
SpringBoot4.0新特性-声明式HTTP远程调用客户端进阶篇
java·spring
xzl045 分钟前
小智服务器:设备的各种MCP消息、初始化响应、工具列表和工具调用响应
java·网络·python
夜勤月7 分钟前
拒绝线程死锁与调度延迟:深度实战 C++ 内存模型与无锁队列,构建高并发系统级中枢
java·c++·spring
洛文泽11 分钟前
BigDecimal类型的数组转为字符串,并且去掉无效的0
java
想进部的张同学11 分钟前
RK3588 + Docker + GStreamer 实现 RTSP 推流(MJPEG AVI → H.264),VLC 成功拉流
docker·音视频·h.264
独断万古他化11 分钟前
Docker 入门前置:容器虚拟化基础之Namespace 空间隔离
linux·docker·容器
a程序小傲11 分钟前
SpringBoot 秒实现在线 Word 编辑、协同、转化等功能
java·开发语言·spring boot·后端·spring·word·深度优先
小北方城市网12 分钟前
微服务接口熔断降级与限流实战:保障系统高可用
java·spring boot·python·rabbitmq·java-rabbitmq·数据库架构
Remember_99313 分钟前
【LeetCode精选算法】前缀和专题一
java·开发语言·数据结构·算法·leetcode·eclipse
indexsunny17 分钟前
互联网大厂Java面试实战:Spring Boot与微服务在电商场景中的应用
java·spring boot·redis·微服务·kafka·spring security·电商