linux minio自启动

前言

linux 设置服务自启一般通过init.d 或者systemd 实现。
init 启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。
启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这使得脚本变得很长。
centos7后引入systemd, 相当于init的升级。和init一项一项去启动服务不同的是,systemd可以同时启动许多服务。所以,这样会大大加快开机等待时机。

一、创建minio配置文件

vi /opt/minio/conf/minio.conf

如果启动服务不对有可能是这个配置文件不对,可以尝试直接把参数写入server文件内,启动成功后再改为读取配置文件

MINIO_VOLUMES="/opt/minio/data"
MINIO_OPTS="--address :19001"
MINIO_ROOT_USER="admin"
MINIO_ROOT_PASSWORD="admin123"

二、创建service 文件

vi /lib/systemd/system/minio.service

[Unit]
Description=MinIO
Documentation=https://docs.min.io
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/opt/minio/minio

[Service]
WorkingDirectory=/opt/minio

EnvironmentFile=/opt/minio/conf/minio.conf
ExecStartPre=/bin/bash -c "if [ -z \"${MINIO_VOLUMES}\" ]; then echo \"Variable MINIO_VOLUMES not set in /opt/minio/conf/minio.conf\"; exit 1; fi"
ExecStart=/opt/minio/minio server $MINIO_OPTS $MINIO_VOLUMES

# Let systemd restart this service always
Restart=always

# Specifies the maximum file descriptor number that can be opened by this process
LimitNOFILE=65536

# 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

[Install]
WantedBy=multi-user.target

# Built for ${project.name}-${project.version} (${project.name})


二、设置开机启动

#将服务设置为每次开机启动
systemctl enable minio.service
#重新加载服务
systemctl daemon-reload
#启动服务
systemctl start minio
#停止服务
systemctl stop minio
#重启服务
systemctl restrat minio
#查看服务状态
systemctl status minio

posted on 2024-06-20 22:36  剩余价值  阅读(4)  评论(0编辑  收藏  举报

导航