【译】在 Linux 上以 systemd 服务方式运行 Jira

原文地址:Run Jira as a systemd service on linux

本文仅适用于服务器和数据中心平台上的 Atlassian 产品。 对服务器*产品的支持将于 2024 年 2 月 15 日之后终止。如果您正在运行服务器产品,可以访问 Atlassian 服务器支持终止公告,查看迁移选项。

*Fisheye和Crucible除外
Linux/Solaris 系统管理不属于 Atlassian 支持范围。本页面仅供参考。

一、目的

本文介绍如何在 Linux 中将 Jira 安装为 systemd 服务。

二、前提条件

Jira 已安装并正常运行,但启动时不会自动启动。例如,Jira 是通过 .zip 包而不是 .bin 安装程序安装的,或者您已将 JIRA 迁移到不同的服务器上。实测发现 bin 安装的也不会自动启动。

三、解决方案

  1. 以 root 用户身份登录 Jira 应用程序服务器。
  2. 以 root 用户身份为 jira 服务创建以下 systemd 单元文件:
bash 复制代码
touch /lib/systemd/system/jira.service
chmod 664 /lib/systemd/system/jira.service
  1. 以 root 身份编辑 systemd 单元文件:
bash 复制代码
vi /lib/systemd/system/jira.service
  1. 在 systemd 单元文件中添加以下内容,以定义 jira 服务:
bash 复制代码
[Unit] 
Description=Atlassian Jira
After=network.target

[Service] 
Type=forking
User=jira
LimitNOFILE=20000
PIDFile=/opt/atlassian/jira/work/catalina.pid
ExecStart=/opt/atlassian/jira/bin/start-jira.sh
ExecStop=/opt/atlassian/jira/bin/stop-jira.sh

[Install] 
WantedBy=multi-user.target 

ℹ️上面定义的 "jira "用户是用于运行 jira 的用户,如果您在其他用户下运行 jira,请更改该用户。像我当前的服务器安装过多次 jira,所以用户名是 jira5,可以通过ps -ef | grep java来查看 jira 运行的用户名。

ℹ️"/opt/atlassian/jira "是默认的 Jira 安装路径,如果您的 Jira 安装路径不同,请更改此路径。

⚠️请勿在前台运行 jira,否则将无法创建文件 "catalina.out"。

  1. 启用服务并启动它:
bash 复制代码
systemctl daemon-reload
systemctl enable jira.service
systemctl start jira.service
systemctl status jira.service

ℹ️在某些情况下,尝试启用 Jira 服务时可能会看到以下错误消息:

bash 复制代码
systemctl enable jira.service
Synchronizing state of jira.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable jira
update-rc.d: error: jira Default-Start contains no runlevels, aborting.
root@cnovit:/lib/systemd/system# cat /etc/init.d/jira

ℹ️这可能是由于之前创建的 Jira 服务文件造成的。要解决这个问题,用户可以根据自己的环境执行以下操作:

  1. 如果文件存在,请备份以前的 Jira 服务文件,然后在启用新的 Jira 服务文件之前删除它:
bash 复制代码
cp /etc/init.d/jira /opt/atlassian/jira-init.d.bak && rm /etc/init.d/jira
sudo systemctl enable jira.service
Created symlink /etc/systemd/system/multi-user.target.wants/jira.service → /lib/systemd/system/jira.service.

⚠️此外,我们建议禁用 SELinux 策略。

相关推荐
啊森要自信17 分钟前
【linux学习指南】VSCode部署Ubantu云服务器,与Xshell进行本地通信文件编写
linux·服务器·ide·vscode·ubuntu
ubuntu180418 分钟前
linux001.在Oracle VM VirtualBox中ubuntu虚拟系统扩容
linux·运维·ubuntu
最后一个bug19 分钟前
分享一些关于 C 函数与 lua 交互的实际项目案例
linux·c语言·嵌入式硬件·lua
皓月盈江22 分钟前
Linux debian系统安装ClamTk开源图形用户界面(GUI)杀毒软件
linux·运维·debian·clamav·clamtk·开源杀毒
ladymorgana24 分钟前
【Nginx从入门到精通】01 、教程简介
运维·nginx
奈斯ing34 分钟前
【Oracle篇】掌握SQL Tuning Advisor优化工具:从工具使用到SQL优化的全方位指南(第六篇,总共七篇)
运维·数据库·sql·oracle
最后一个bug40 分钟前
C函数如何返回参数lua使用
linux·c语言·开发语言·嵌入式硬件·lua
酆訫鎻嗳1 小时前
ubuntu固定ip
linux·运维·ubuntu
188_djh1 小时前
# ubuntu 安装的pycharm不能输入中文的解决方法
linux·ubuntu·pycharm·fcitx·export·pycharm不能输入中文·zh_cn.utf-8
vvw&1 小时前
如何在 Ubuntu 上安装 Jellyfin 媒体服务器
linux·运维·服务器·ubuntu·媒体·nas·jellyfin