LoginSignup
1
0

GitHub Self-hosted RunnerがIPv6のせいで失敗する

Last updated at Posted at 2023-12-22

GitHub Action

GitHub ActionとはGitHubから直接CI/CD、テスト、ビルド等をできるようにするGitHubのサービスであり、コードに修正があった時、素早くサーバやクライアントにコードのデプロイをしてくれる。
デプロイやビルド作業にはサーバが必要となるが、GitHubの無料枠を使うが、今回のサービスはRaspberry PIのBluetoothを利用するため、直接ラズパイにDockerイメージをデプロイする必要があった。

Raspberry PIにGitHub Self-hosted Runnerをインストール

GitHubのSettingsのActions→Runnersを開くと、GitHub Actionsをインストールするためのコマンドが表示される。
そのままコピペして実行したらGitHub ActionのSelf-hosted Runnerが追加されるはずだが、config途中WRITE ERROR: The HTTP request timed out after 00:01:40.とエラーが発生し、Timeoutしてしまう。

IPv6 Issue

GitHub Issueを調べてみたところ、config.shの途中で進まなくなるissueがあり、IPv6を消したら問題なくセットアップが完了したという報告があったので、ラズパイのIPv6をオフーにしたら解決できた。

Raspberry PIのIPv6をoffにする

/boot/cmdline.txtrootwaitの前にipv6.disable=1を追記する。
sudo shutdown -r 0でラズパイを再起動する。
ip a | grep inet6で何も表示されなくなったことを確認したら設定完了。

再びconfig.shを実行

config.shが正常に終了し、StatusがIdleになっていることが確認できた。
image.png

サービスの登録

サービスとして登録しないと、毎回run.shを実行しないといけないのでサービスとして登録し自動的にGitHub Actionが動くようにする。
次のコマンドを打ち込んでサービスを登録する。

sudo ./svc.sh install

その後、サービスを起動する。

sudo ./svc.sh start

サービスの確認はsudo ./svc.sh statusでできる。

最後に、再起動をしてもちゃんとGitHub上にidleになっているか確認できれば完了。
image.png

注意事項

14日以上Runnerが起動しなかった場合、自動的に登録が消されるため、再登録を行う必要がある。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0