centos中把某个程序以服务的形式在后台运行,并添加自启动

本文介绍了如何在CentOS系统中将Jenkins程序配置为服务,使其能在后台运行,并设置为开机自动启动。通过编辑`/etc/systemd/system/jenkins.service`文件,指定执行命令和工作目录,然后使用`systemctl`命令管理服务的启动、重启和自启动设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目的

在centos中把某个程序以服务的形式在后台运行,并添加自启动
举例:添加Jenkins的启动、开机自启脚本

实现

  1. 在/etc/systemd/system添加Jenkins.service脚本

    vim /etc/systemd/system/jenkins.service

  2. 输入一下内容
    [Unit]
    Description=Your service description
    After=network.target
    
    [Service]
    User=root
    WorkingDirectory=/opt/javaApp
    ExecStart=/opt/java/jdk-17.0.5/bin/java -jar  /opt/javaApp/jenkins.war
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    
    WorkingDirectory修改工作目录
    ExecStart=自己的程序启动命令
  3. 重新加载service文件命令

    systemctl daemon-reload

  4. 启动程序

    systemctl start jenkins.service

  5. 添加自启动

    systemctl enable jenkins.service

备注

服务常用命令
  • systemctl list-units --type=service:此命令将返回当前正在运行的所有服务的列表。
  • systemctl status service-name:此命令将返回服务的状态信息,例如 service-name 是否正在运行。
  • systemctl is-enabled service-name:此命令将指示 service-name 是否已启用自动启动。
  • systemctl enable service-name:此命令将启用 service-name 的自动启动。
  • systemctl disable service-name:此命令将禁用 service-name 的自动启动。
  • systemctl start service-name:此命令将运行名为 service-name 的服务。
  • systemctl stop service-name:此命令将停止名为 service-name 的服务。

请注意,在命令中,需要将 service-name 替换为您要查询或更改状态的服务的实际名称。
本文仅展示服务最基本的用法,最简短的服务文件,更多示例请自行百度

### 使用 Docker 部署微信小程序后端服务器 #### 准备工作 为了顺利部署微信小程序的后端服务,需先确保已正确安装启动 Docker 环境。对于 CentOS 8 用户而言,在卸载旧版本 Docker 组件之后,应通过如下命令完成新版本 Docker 的安装: ```bash yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum install docker-ce docker-ce-cli containerd.io systemctl start docker ``` 上述操作完成后即可获得最新的 Docker 版本支持[^2]。 #### 构建 Spring Boot 应用镜像 考虑到微信小程序后台常采用 Spring Boot 实现,这里将以该框架为例介绍具体步骤。首先创建 `Dockerfile` 文件用于定义应用所需运行环境及其依赖关系: ```dockerfile FROM openjdk:17-jdk-alpine VOLUME /tmp ADD target/demo.jar app.jar ENTRYPOINT ["java","-jar","/app.jar"] EXPOSE 8080 ``` 接着编译打包应用程序将其转换成 Docker 可识别的形式——即构建镜像文件。假设当前目录下存在 Maven 工程,则可通过执行以下指令来达成目的: ```bash mvn clean package -DskipTests=true docker build -t wx-backend . ``` 以上过程会依据指定路径下的 `pom.xml` 或其他配置自动下载必要的库文件将最终产物封装至自定义命名的空间内[^3]。 #### 运行容器实例 当成功制作好镜像后,下一步便是利用其派生出实际可工作的单元—容器。此时可以借助官方提供的 CLI 工具轻松实现这一点: ```bash sudo docker run -d -p 9090:8080 --name wx-server wx-backend ``` 这条语句的作用在于以后台模式开启一个新的进程,同时映射主机上的某个开放端口到目标服务监听位置;另外还赋予了易于辨识的名字以便后续管理和维护之便[^1]。 #### Nginx反向代理设置(可选) 如果希望进一步优化网络性能或是出于安全性的考量,可以在前端加入一层Nginx作为中介层来进行流量分发处理。编辑 `/etc/nginx/conf.d/default.conf` 添加类似下面的内容片段: ```nginx server { listen 80; server_name localhost; location /api/ { proxy_pass http://localhost:9090/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ``` 最后记得重启 Nginx 让更改生效: ```bash systemctl restart nginx ``` 这样就完成了整个基于 Docker 的微信小程序后端服务平台架设流程概述。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值