Linux开机启动Tomcat

  1. 需求背景

    复制代码
    Linux重启后要手动执行"startup.sh"启动Tomcat,比较麻烦,想要Linux开机启动Tomcat。
  2. 开机启动

    复制代码
    #----------------------------------------------------------
    sudo tee /usr/bin/tomcat.sh <<-'EOF'
    #! /bin/bash
    nohup /opt/tomcat/bin/startup.sh > /opt/tomcat/nohup.log &
    EOF
    chmod +x /usr/bin/tomcat.sh
    #----------------------------------------------------------
    sudo tee /etc/systemd/system/tomcat.service <<-'EOF'
    [Unit]
    Description=tomcat
    After=syslog.target network.target
    [Service]
    Environment="JAVA_HOME=/opt/jdk"
    Type=oneshot
    RemainAfterExit=yes
    ExecStart=/usr/bin/tomcat.sh
    [Install]
    WantedBy=multi-user.target
    EOF
    #----------------------------------------------------------
    systemctl enable tomcat
    #----------------------------------------------------------
    
    # 启动tomcat
    systemctl start tomcat
    # 停止tomcat
    systemctl stop tomcat
    # 重启tomcat
    systemctl restart tomcat
    # 查看tomcat状态
    systemctl status tomcat
  3. 注意事项

    复制代码
    #----------------------------------------------------------
    "tomcat.service"不添加Environment="JAVA_HOME=/opt/jdk"报错如下
    #----------------------------------------------------------
    Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
    At least one of these environment variable is needed to run this program
    #----------------------------------------------------------
    解决方法:"startup.sh"首行添加"export JAVA_HOME=/opt/jdk"可解决
    #----------------------------------------------------------
相关推荐
南棱笑笑生1 小时前
20251217给飞凌OK3588-C开发板适配Rockchip原厂的Buildroot【linux-5.10】后调通ov5645【只能预览】
linux·c语言·开发语言·rockchip
一叶飘零_sweeeet1 小时前
Tomcat 底层原理与实战全解析
tomcat
Sleepy MargulisItG2 小时前
【Linux网络编程】应用层协议:HTTP协议
linux·服务器·网络·http
G31135422732 小时前
Linux 内核设计中的核心思想与架构原则
linux·架构·php
zhuzewennamoamtf3 小时前
Linux内核platform抽象、数据结构、内核匹配机制
linux·运维·数据结构
Kira Skyler4 小时前
ELF文件解析 elf.o 文件主要内容.md
linux
逐梦吧!旅行者4 小时前
Linux MySQL 5.7用户管理与用户密码的设置问题
linux·mysql
RisunJan4 小时前
Linux命令-grpck命令(验证和修复组配置文件(`/etc/group` 和 `/etc/gshadow`)完整性的工具)
linux·运维·服务器
loosed5 小时前
Ubuntu mysql8 tar.xz 安装
linux·ubuntu·adb
Xの哲學5 小时前
Linux VxLAN深度解析: 从数据平面到内核实现的全面剖析
linux·服务器·算法·架构·边缘计算