ビルドが遅い
by
Kizashi Nagata
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
ビルドが遅い nakanoshima.dev#36 コンテナについて話したい、助けてほしい人集まれLT大会 2024/3/13 株式会社インゲージ 永田 兆
Slide 2
Slide 2 text
自己紹介 ● 永田 兆(ながた きざし) ● @kizashi1122 ● 独立系SIer、BtoB SaaS 会社を経て ● 2014年よりインゲージ社(創業メンバー) ○ 創業時よりCTO ○ 自社サービス Re:lation の開発 ○ 当初 バックエンドやインフラを担当 ● 2児の父(長男小5、長女小3) 2
Slide 3
Slide 3 text
会社紹介 ● 株式会社インゲージ ● 代表取締役 CEO 和田 哲也 ● 創業 2014年1月11日 ● 大阪府大阪市北区芝田1-14-8 梅田北プレイス
Slide 4
Slide 4 text
サービス紹介
Slide 5
Slide 5 text
Chatwork とチャネル連携リリース(先々週) 5
Slide 6
Slide 6 text
6
Slide 7
Slide 7 text
デプロイって時間かかりますよね ● 昔 Java やってたころは、WARファイルを作って Tomcat のあるサーバーに FTP(S) でファイル送って、サーバ再起動して終わりだった。 ● Rails をさわるようになってからは(EC2 に直起動) Capistrano を使ってデ プロイしていた。時間もデプロイ開始から5分くらいで終わってた。 7
Slide 8
Slide 8 text
Docker を使うようになって ● CodePipeline でデプロイ ○ Pull 型のデプロイ ○ Source → Build → Deploy ● Build に時間がかかる! 8
Slide 9
Slide 9 text
Dockerfile や buildspec ファイルやら見直した ● Dockerfile 内の使わないソフトのインストールをやめる ● buildspec ○ docker build の引数に --build-arg BUILDKIT_INLINE_CACHE=1 を指定 ○ 環境変数に export DOCKER_BUILDKIT=1 ● しかし大きな効果はなく 9
Slide 10
Slide 10 text
それとは別に ● docker build 内で webpack でバンドル中に以下のエラーがおこったりおこら なかったりすることがあった 10
Slide 11
Slide 11 text
write EPIPE 対応 ● この対応で build stage のインスタンスを BUILD_GENERAL1_MEDIUM にした 11
Slide 12
Slide 12 text
結果 ● エラーもなくなって、ビルドも速くなった ● ビルドを速くするつもりはなかったので副産物的な成果。30分→15分。 12
Slide 13
Slide 13 text
今は ● webpack をやめて、vite を使ってることもあり 15 分→12分に。 ● 実験 ○ さっき BUILD_GENERAL1_LARGE (一つ上)で試してみたら12分→10分に。 ○ 逆に BUILD_GENERAL1_SMALL にしてみたら yarn run build でエラー(2回実施して2回と も) 13
Slide 14
Slide 14 text
懇親会にて ● bun https://bun.sh/ を使えば、yarn install が速くなるよ! と教えて頂きま した 14
Slide 15
Slide 15 text
15 インゲージではエンジニアを募集しています!
Slide 16
Slide 16 text
ご清聴ありがとうございました 16