Linux搭建minio服务及使用

一、下载最新版本:

  • 操作系统Ubuntu20.04.3
# 下载服务端
wget https://dl.min.io/server/minio/release/linux-amd64/minio
# 将下载所得minio文件拷贝到自己的文件夹去并赋予权限
sudo cp minio /usr/local/Minio
sudo chmod +x /usr/local/Minio/minio
#在安装目录下建立一个文件
sudo mkdir /data

二、安装目录下启动:

sudo ./minio server /data --console-address ":9099"
  • MinIO启动后,可以在浏览器中输入http://ip:9099,在用户名密码处输入默认用户名密码(minioadmin/minioadmin)即可登陆系统。

三、 配置自启动服务

  • 在终端启动MinIO的方式相对较为简单,但是当系统宕机重启时,服务也会停止,不能重新启动。我们就需要将MinIO配置为系统服务,方便在系统重启时自动启动。

3.1、编写配置文件

为简化MinIO配置,我们可将MinIO的配置统一写入一个配置文件,以供启动时调用。配置方式如下:

# 默认把配置文件放入/etc/default文件夹中,名称为minio
sudo vim /etc/default/minio
在文件中写入如下内容:
# 指定数据存储目录(注意:这个目录要存在且拥有相对应的权限)
MINIO_VOLUMES="/data"

# 监听端口
MINIO_OPTS="--console-address :9099"

# 新版本使用;指定默认的用户名和密码,其中用户名必须大于3个字母,否则不能启动
MINIO_ROOT_USER="minioadmin"
MINIO_ROOT_PASSWORD="minio123456"

# 区域值,标准格式是“国家-区域-编号”,
MINIO_REGION="cn-north-1"

# 域名
# MINIO_DOMAIN=minio.your_domain.com

3.2、编写服务文件

  • 创建minio.service服务文件,并写入配置信息:
sudo vim /usr/lib/systemd/system/minio.service
  • 如下:
[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/usr/local/Minio/minio
[Service]
WorkingDirectory=/usr/local/
ProtectProc=invisible

# 指向3.1节中的配置文件
EnvironmentFile=/etc/default/minio

ExecStartPre=/bin/bash -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /etc/default/minio\"; exit 1; fi"
ExecStart=/usr/local/bin/minio server $MINIO_OPTS $MINIO_VOLUMES

# Let systemd restart this service always
Restart=always

# Specifies the maximum (1M) file descriptor number that can be opened by this process
LimitNOFILE=1048576

# Specifies the maximum number of threads this process can create
TasksMax=infinity

# Disable timeout logic and wait until process is stopped
TimeoutStopSec=infinity
SendSIGKILL=no
SuccessExitStatus=0

[Install]
WantedBy=multi-user.target
Alias=minio.service

3.3、使服务生效

通过systemctl将服务生效并启动服务。

# 重新加载服务配置文件,使服务生效
systemctl daemon-reload

# 将服务设置为开机启动
systemctl enable minio

# 服务立即启动
systemctl start minio

# 查看minio服务当前状态
systemctl status minio
  • MinIO服务启动后,在登录系统时,需要根据新配置的用户名密码(在/etc/default/minio文件中)登录

四、服务搭建

浏览器输入http://127.0.0.1:9099进行操作

1、创建Access Keys

2、创建bucket

3、建文件目录


4、python使用样例

from minio import Minio
from minio.error import S3Error

def main():
    # Create a client with the MinIO server playground, its access key
    # and secret key.
    client = Minio(
        endpoint="10.100.***.***:9000",
        access_key="YW4Wf1mR8E6*********",
        secret_key="OEWMgWhUabDUceVEd6********",
        secure=False
    )

    # Make 'sem-rf' bucket if not exist.
    found = client.bucket_exists("sem-rf")
    if not found:
        client.make_bucket("sem-rf")
    else:
        print("Bucket 'sem-rf' already exists")

    # Upload 'Startup/xx.zip' as object name
    # 'xx.zip' to bucket 'sem-rf'.
    client.fput_object(
        "sem-rf", "xx.zip", "Startup/xx.zip",
    )
    print(
        "'xx.zip' is successfully uploaded as "
        "object 'xx.zip' to bucket 'sem-rf'."
    )

if __name__ == "__main__":
    try:
        main()
    except S3Error as exc:
        print("error occurred.", exc)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容