SSHでJava Spring Bootアプリケーションを実行するBashスクリプト

SSHでJava Spring Bootアプリケーションを実行するBashスクリプト

パイプライン操作(SSH経由)でトリガーされる単純なbashスクリプトファイルがあります。これ配布.sh以下の内容が多少含まれています。

cd /apps && java -jar "-Dspring.profiles.active=prod " "-Dserver.port=$PORT " \
"/apps/$DEPLOYING_VERSION" &

あまり重要ではない他のロジックもあります。 SSHによるパイプラインの実行:

bash /deploy.sh ${APPLICATION_NAME}

始める方法配布.shjava -jarを実行して比較するには配布.sh私のパイプライン(作業)を完了すると同時に、Javaアプリケーションがシステム上で動作し続けるには?私は前に試しました

cd /apps && nohup java -jar "-Dspring.profiles.active=prod " "-Dserver.port=$PORT " \
"/apps/$DEPLOYING_VERSION" &

しかし、物事が詰まっています...

java -jarを追跡して終了するのは素晴らしいですが、今はそれほど重要ではありません。 :)

ベストアンサー1

cd /apps並列に実行するには、java -jar2つではなく単一の&記号を使用する必要があります cd /apps & java -jar。ただし、java -jarこのコマンドは/ appsディレクトリで実行されると仮定すると機能しません。

より一般的には、command1 & command2command1とcommand2は独立して並列に実行されます。

CI / CDツール(CI / CDパイプラインについて話していると仮定)は並列ジョブの実行をサポートできるため、パイプライン定義でもこの問題を解決しようとすることができます(あなたの場合に適している場合)。

おすすめ記事