安装

  1. 创建存放运行包的目录,这里以 ~/app 为例:

    mkdir ~/app && cd ~/app
  2. 上传运行包到 ~/app 目录中。

  3. 创建 工作目录:

    mkdir ~/app/resources && cd ~/app/resources
  4. 创建 demo 配置文件:

    vim application.yaml
  5. 将以下内容复制到 application.yaml 文件中,并根据下面的配置说明进行配置:

    server:
      # 运行端口
      port: 8090
    #其它配置.........
  6. 测试运行 demo:

    cd ~/app && java -jar demo.jar --spring.config.additional-location=optional:file:$HOME~/app/resources

作为服务运行

  1. 退出普通账户,登录到 root 账户:

    exit
  2. 创建 demo 服务文件:

    vim /etc/systemd/system/demo.service
    

    将以下内容复制到 demo.service 文件中,并根据下面的配置说明进行配置:

    [Unit]
    Description=Demo Service
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    Type=simple
    User=USER
    ExecStart=/usr/bin/java -server -Xms256m -Xmx256m -jar JAR_PATH --spring.config.additional-location=optional:file:/home/app/resources/
    ExecStop=/bin/kill -s QUIT $MAINPID
    Restart=always
    StandOutput=syslog
    
    StandError=inherit
    
    [Install]
    WantedBy=multi-user.target

    提示: 请确保 /usr/bin/java 是正确无误的。建议将 ExecStart 中的命令复制出来运行一下,保证命令有效。

  3. 重新加载 systemd:

    systemctl daemon-reload
    
  4. 运行 Demo 服务:

    systemctl start demo
  5. 在系统启动时启动 Demo 服务:

    systemctl enable demo

    最后,你可以通过下面的命令查看服务日志:

    journalctl -n 20 -u demo

版本升级

  1. 备份数据,可以参考备份与恢复进行完整备份。

  2. 停止 Demo 服务:

    service Demo stop
  3. 上传新版本的 Demo 运行包,覆盖原有的运行包。

  4. 启动 Demo 服务:

    service Demo start

反向代理

  1. Nginx 配置示例:

    upstream demo {
      server 127.0.0.1:8090;
    }
    server {
      listen 80;
      listen [::]:80;
      server_name www.demo.com;
      client_max_body_size 1024m;
      location / {
        proxy_pass http://demo;
        proxy_set_header HOST $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      }
    }