Gitlabを利用しており、CIにgitlab-runnerを使っていてであったトラブルについて
AWS上でdocker+machine構成
確率でジョブが失敗する
ubuntu 16.04 18.04にて、特定のジョブが確率で失敗するというもの
CIの中でtest serverを起動して ローカルで待ち受け、そこに接続するタイプで、接続がうまくいかないというもの。
centos7 にしたところ起きなくなった。結局根本的な原因は不明。
dockerのバージョンやkernelのバージョンが影響したのかもしれないと考えている。
中央リポジトリへデータを取得しに行く際403が出るようになる
これは単純で、中央リポジトリへデータを取得しにいくジョブが並列で大量に動いたため、(同一グローバルIPアドレスを共用していた) 中央リポジトリサーバからabuseされていた。
内部に中央リポジトリサーバのキャッシュを置くことで対処した。 (グローバルIPアドレスを共用しない方法も考えられるが、行儀が悪い気がしたのでその方法はとらなかった)
alpine を利用している node などでエラーにより失敗する
docker+machineで利用するVMを AWSのm5シリーズにしたところエラーが出るようになった。
m4シリーズにすることで解決(?)。