Docker安装MinIO,搭建私有云存储

以下操作是在已经安装Docker的服务器中进行

1、查找镜像

docker search minio

在这里插入图片描述

2、下载镜像

docker pull minio/minio

在这里插入图片描述

3、查看已下载镜像

pull images

在这里插入图片描述

4、创建挂在目录

一个用来存放配置,一个用来存储上传文件的目录
启动前需要先创建Minio外部挂载的配置文件( /docker-software/minio/config),和存储上传文件的目录( /docker-software/minio/data)

mkdir -p /docker-software/minio/{data,config}

5、创建Minio容器并运行

docker run -p 9000:9000 -p 9090:9090  --name minio -d -e MINIO_ACCESS_KEY=minio -e MINIO_SECRET_KEY=admin123456 -v /docker-software/minio/data:/data -v /docker-software/minio/config:/root/.minio minio/minio server /data --console-address ":9090" --address ":9000"

9090端口指的是minio的客户端端口(浏览器访问使用该端口)
9000端口是minio的服务端端口(程序代码使用该端口)
MINIO_ACCESS_KEY :账号
MINIO_SECRET_KEY :密码(账号长度必须大于等于5,密码长度必须大于等于8位)
–console-address 指定客户端端口

6、查看minio是否正常启动

docker ps

在这里插入图片描述

7、访问操作

访问:ip:9090 用户名:minio 密码 :admin123456

在这里插入图片描述

8、手动创建用户

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

9、创建组

在这里插入图片描述
填写组名称及可选择已有用户
在这里插入图片描述

10、创建accessKey和secretKey

自己定义相关accessKey和secretKey

在这里插入图片描述

在这里插入图片描述
点击下载
在这里插入图片描述

文件内容如下,保存文件,SDK操作文件的API需要用到

{"console":[{"access_key":"sdWEDdffsfsd","secret_key":"1234dfsfsdfedsfsd"}]}

11、创建Bucket

在这里插入图片描述

12、SDK操作

官方文档:https://docs.min.io/docs/
javaSDK:https://docs.min.io/docs/java-client-quickstart-guide.html

13、maven依赖及简单测试程序

由于minio自带的okhttp版本过低,会报错。故单独引用okhttp依赖

#低版本的okhttp会报错提示
<dependency>
    <groupId>com.squareup.okhttp3</groupId>
    <artifactId>okhttp</artifactId>
    <version>4.9.0</version>
</dependency>

<dependency>
    <groupId>io.minio</groupId>
    <artifactId>minio</artifactId>
    <version>8.5.2</version>
    <exclusions>
        <exclusion>
            <artifactId>okhttp</artifactId>
            <groupId>com.squareup.okhttp3</groupId>
        </exclusion>
    </exclusions>
</dependency>

在这里插入图片描述

测试文件上传

import io.minio.BucketExistsArgs;
import io.minio.MakeBucketArgs;
import io.minio.MinioClient;
import io.minio.UploadObjectArgs;
import io.minio.errors.MinioException;

import java.io.IOException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;

public class FileUploader {

    public static void main(String[] args) throws IOException, NoSuchAlgorithmException, InvalidKeyException {
        try {
            // Create a minioClient with the MinIO server playground, its access key and secret key.
            MinioClient minioClient =
                    MinioClient.builder()
                            .endpoint("ip:9090")
                            .credentials("sdWEDdffsfsd", "1234dfsfsdfedsfsd")
                            .build();

            // Make 'asiatrip' bucket if not exist.
            boolean found = minioClient.bucketExists(BucketExistsArgs.builder().bucket("dev").build());
            if (!found) {
                // Make a new bucket called 'asiatrip'.
                minioClient.makeBucket(MakeBucketArgs.builder().bucket("dev").build());
            } else {
                System.out.println("Bucket 'public' already exists.");
            }

            // Upload '/home/user/Photos/asiaphotos.zip' as object name 'asiaphotos-2015.zip' to bucket
            // 'asiatrip'.
            minioClient.uploadObject(
                    UploadObjectArgs.builder()
                            .bucket("dev")
                            .object("文件名称")
                            .filename("文件上传路径")
                            .build());
          
        } catch (MinioException e) {
            System.out.println("Error occurred: " + e);
            System.out.println("HTTP trace: " + e.httpTrace());
        }
    }
}

至此,Docker搭建Minio服务器和简单操作完成!!!

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Docker是一个开源的应用容器引擎,它使得开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows机器上,也可以实现虚拟化。MinIO 是一个开源的对象存储服务器,常用于构建云存储服务。 要在 Docker安装 MinIO,你需要按照以下步骤操作: 1. **安装 Docker**(如果你还没有安装): - 对于 Ubuntu/Debian: `sudo apt-get update && sudo apt-get install docker.io` - 对于 CentOS/RHEL: `sudo yum install docker-ce` - 对于 macOS (通过 Docker Desktop): [官方下载](https://docs.docker.com/docker-for-mac/install/) - 对于 Windows: [官方下载](https://docs.docker.com/docker-for-windows/install/) 2. **拉取 MinIO 镜像**: 使用 Docker 命令行,运行: ``` docker pull minio/minio ``` 3. **运行 MinIO 容器**: 可以选择以守护进程模式运行 (`-d` 参数表示 detached, 后台运行),例如: ``` docker run -p 9000:9000 -v minio-data:/data -e MINIO_ACCESS_KEY=your-access-key -e MINIO_SECRET_KEY=your-secret-key minio/minio server /data ``` 这里 `-p 9000:9000` 将容器内的 9000 端口映射到主机的 9000 端口,`-v` 挂载宿主机目录(如 `minio-data`)为容器数据卷,`-e` 设置访问密钥和秘密密钥。 4. **配置和验证**: 访问 `http://localhost:9000`(如果在本地运行),使用你刚才设置的 `MINIO_ACCESS_KEY` 和 `MINIO_SECRET_KEY` 登录,检查是否成功安装并能正常工作。 **相关问题--:** 1. Docker镜像的作用是什么? 2. 除了运行,还可以如何管理和控制 MinIO 容器? 3. 如何在 Docker Compose 文件中定义并运行 MinIO 服务?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值