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"可解决
    #----------------------------------------------------------
相关推荐
jay11 分钟前
ens2f0 IP 远程连线,balance-alb 模式配置双网卡(ens2f0 + ens6f0)Bond,避免断网
linux·运维·服务器·网络·tcp/ip
自在极意功。25 分钟前
Socket学习
tomcat·socket·线程池
Evan芙42 分钟前
用Shell脚本破解经典鸡兔同笼问题
linux·运维·网络
꧁坚持很酷꧂1 小时前
Ubuntu系统下Qt程序连接串口设备没有问题,但运行时出现Permission denied的解决方法
linux·qt·ubuntu
jerryinwuhan2 小时前
机器人控制程序
linux·运维·网络
honeysuckle_luo2 小时前
香橙派ai pro安装支持昇腾NPU的ollama
linux·运维·服务器
池央2 小时前
从“算子不支持”到“NPU高效执行”:CANN 8.0 TBE 自定义算子落地实践
linux·人工智能
小锋学长生活大爆炸2 小时前
【教程】CentOS在不知道root密码的情况下进入shell和重置密码
linux·运维·centos
代码游侠2 小时前
学习笔记——GDB调试工具
linux·开发语言·笔记·学习
通义灵码3 小时前
Qoder Linux 版公测上线
linux·运维·服务器