云服务器

1. 前言

在进行CentOS上开发时,将一些软件设置为开机启动,又或者是能够使用systemctl命令进行启动会增加便利性,这里介绍CentOS上自定义开机启动的方法。

systemctl 用于系统服务的配置,部署,RedHat系已经将systemd作为了其默认的系统服务管理工具。其他实现方法也有service命令,或者直接修改/etc/init.d文件,再或者使用chkconfig这样的工具。

2. 本文分析内容安排

  • 建立服务文件

  • 保存目录

  • 设置开机启动

3. 建立服务文件

开机启动配置文件在/lib/systemd/system目录中,服务以.service结尾,这里以docker仓库项目registry为例进行说明。registry启动需要加配置文件,配置文件为config-example.yml,我将之放到了/home/neo/docker-registry目录中,将registry移动到了/usr/bin目录下,那么启动registry镜像仓库的命名为registry /home/neo/docker-registry/config-example.yml。每次都这么启动太过麻烦,这里介绍开机自启动方式,首先建立服务文件/lib/systemd/system/registry.service。文件的具体内容为:

[Unit]Description=Docker RegistryAfter=network.target[Service]Type=simpleExecStart=/usr/bin/registry /home/neo/docker-registry/config-example.ymlExecstop=/bin/kill /usr/bin/registry[Install]WantedBy=multi-user.target

注意:[Service]中需要加上Execstop=/bin/kill /usr/bin/registry,不然当执行systemctl start registry命令时不会退出到后台

4. 保存文件

以644的权限保存文件

5. 设置开机启动

改变service文件时需要执行systemctl daemon-reload来使改变生效 
启动registry服务命令: 
systemctl start registry 
开启启动registry命令: 
systemctl enable registry


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: