rcスクリプトでGO言語のプロセスを再起動した

投稿者: | 2018年7月17日

GMOアドマーケティングのSSP開発チームのT.Kです。
新規でWebAPIを作成する機会があったので、チーム内で流行っているGo言語で実装しました。
デプロイ時にプロセスを再起動する必要があったので、再起動を楽に行うためにrcスクリプトについて調べました。

Go側でPID出力を実装する
プロセスの停止はPIDを指定して行うので、Go側で実装します。

スクリプトファイルを実装する
PIDファイルは /var/run/ 配下に配置します。
権限の関係で直下に配置できない場合は、ディレクトリを掘って、アクセス権限をもらう。

まとめ
プロセス再起動に必要最低限の機能を実装しました。
少ない実装で、デプロイ作業がだいぶ楽になりました。
ディストリビューション標準のプログラムにrcスクリプトが含まれているので
機能を充実させたい場合は、参考にすると良いでしょう。