Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ツナカン#3_CloudNativeBuildpacksを使いたい

 ツナカン#3_CloudNativeBuildpacksを使いたい

ツナカン(TUNA-JP Conference) #3 (https://tuna-jp.connpass.com/event/250130/) のLT1 「Cloud Native Buildpacks を使いたい」で発表した時の資料です。

B0198f7b8424c4b14060121fa78926a8?s=128

ttani03

June 24, 2022
Tweet

Other Decks in Technology

Transcript

  1. ©2022 VMware, Inc. Cloud Native Buildpacks を使いたい Tomoyuki Tanigaki Sr.

    TSE / CTO Ambassador @VMware 2022/6/24
  2. ©2022 VMware, Inc. 2 Dockerfile がしんどい… 自作ツールをコンテナ化したい! ところで、Dockerfile はどう書けばいいの? 「Dockerfile

    書き方」 「Dockerfile ベストプラクティス」 などで検索 ビルドキャッシュ マルチステージビルド distroless, alpine…
  3. ©2022 VMware, Inc. 3 Cloud Native Buildpacks を使いたい! Dockerfile なしでイメージを作成!

    参照:buildpacks.io
  4. ©2022 VMware, Inc. 4 Cloud Native Buildpacks の仕組み Detect フェーズ

    ▪ ソースコードから buildpack の適用可否を判定 例) ▪ Python: requirements.txt, setup.py の有無 ▪ Node.js: package-lock.json の有無 Build フェーズ ▪ コードを実行するための環境を準備 例) ▪ Python: “pip install –r requirements.txt” を実行 ▪ Node.js: “npm install” を実行 参照:buildpacks.io
  5. ©2022 VMware, Inc. 5 Cloud Native Buildpacks の使い方 1. pack

    コマンドのインストール ✓ Homebrew: “brew install buildpacks/tap/pack” を実行 2. “pack build <イメージ名> --builder <builder 名>” を実行 ✓ builder: コンテナイメージを生成するためのベースとなるイメージ 参照:buildpacks.io
  6. ©2022 VMware, Inc. 6 デモ ソースコード ▪ https://github.com/ttani03/buildpack-fastapi デモの内容 ▪

    pack コマンドでイメージを作成 ▪ Tilt との連携
  7. ©2022 VMware, Inc. 7 はまったポイント ❑ Procfile の書き忘れ ✓ 起動時に実行するコマンドを指定する必要あり

    ❑ Ubuntu on WSL2 x Rancher Desktop では pack コマンドが動かない… ✓ https://github.com/rancher-sandbox/rancher-desktop/issues/1544 ❑ Tilt で live_update を使うときはファイル更新時に リロード処理が実行されるよう設定が必要
  8. Thank You ©2022 VMware, Inc.