#298 もっと早く知りたかったDockerのベストプラクティス入門

2024/11/6 ·

  • この番組は駆け出しエンジニアの順平と先輩エンジニアのカイチノリが送る駆け出しエンジニアを中級エンジニアにキャリアアップさせるラジオですはいということで本日ですが5DockerベストプラクティスI wish I knew when I startedっていうDockerのベストプラクティスの記事をdaily.devから見つけてきたので



  • それを紹介するというかみんなで勉強しようという回になりますなるほど私がDockerを始めた時に知りたかった5つのベストプラティックってことですねなんで?Dockerなんてね本当に申し訳ないんですけどうん



  • なんとなくやってますよ俺はね動きゃいいと思って本当に申し訳ない余計なものを入れないシンプルにするそれだけかと思いきやそんなことなかったんでちゃんと勉強していきましょうというので5つ上から読み合わせていく感じになるんですけど使ってますよねどっか入るどっか入るというかどっか使ってますとも今は使ってない使ったことは使ったことあります使う?



  • 今は使ってないけど開発そうですねじゃあ役立ちますねステップ1マルチステージのビルドを作りましょうとほー



  • 多分For Smaller Imagesってあるんですけどちっちゃいイメージを作るためにっていうところが結構大事な気がしていてDockerファイルでコンテナ作るときってなるべくイメージ小さくするみたいなありますね謎ではないか謎ではないですね立ち上げ早くなのかそうっすね



  • クローンというかビルドが早くなるドッカービルドが早くなるからなのでまずなるべくイメージは小さい方がいいよっていうのを知った上でマルチステージビルド間違えた合ってたマルチステージビルドを使っていこうぜとというわけですねちなみにじゅんぺんマルチステージビルド知ってる知りません知っておけこれは何ですか要するにアプリケーションを



  • ビルドするやつと動かすやつ分けましょうねみたいな話ですかいやこれはですね確か違うはずほうえっとドッカーって要は動く環境動く仮想環境を作りたいわけじゃないですかそうですね



  • その仮想環境を作るときにしかいらないやつあるよねみたいなそういうやつは完成形の動いてるものにはいらないよねみたいな具体例何ですかね出したいですよね例えばですよコンパイルする言語においてコンパイルに必要なライブラリ例えばアプリケーションを動かす商用環境とかにデプロイしてリリースするっていうのを想定したときに



  • アプリケーションコードをコンパイルしてコンパイル後のアセンブリコンパイル後のやつを動かすわけじゃないですかコンパイルに必要だったライブラリはいらないですよねいらないと思うだからマルチステージビルドでまずファーストステージでコンパイルしますコンパイルにし終わった成果物だけをセカンドステージに渡してセカンドステージは動かすだけのものだけを入れる



  • でこれによってマルチステージビルドでどっかイメージの容量減らすよねみたいなこれ多分現実世界で考えた方が分かりやすいなと思っててお家建てるじゃないですか建てた後にさ工具と大工さんいたら嫌じゃないですか住んでる時にもめっちゃですね便利かもしれないですけどね便利かもしれない急にフローリングに穴開いちゃったって時に一瞬で直してくれますけどそう



  • そうなんですが基本いらないとマルチステージビルドを使ってないドッカーイメージっていうのは大工さんと一緒に住んでる家と同じみたいなものですよね



  • じゃあ現実世界で考えると現実プロジェクトで現実プロジェクトで考えるとデブの時デベロップステージ開発フェーズ開発フェーズにおいてはまるっとパッケージじゃなくてまるっとドッカーファイルでとりあえず作っておいてリリースするぐらいの段階になったら整理するみたいなイメージなんですかねどうなんだろうなんとなくだけどそんなこともないような気がするほう



  • 開発でもマルチステージビルドを使ってるイメージあるどこで分けるんだ環境を作るときに使うか使わないかな気がするなあー確かに環境を作るときに使う環境を作るときにだけに使うやつとかあるのかあるかあるらしいなあったらやってくれとまあでもマルチステージビルドですねこれがまあなんか



  • ちょっと聞いてる人に分かりやすくDockerファイル内どうなってるのっていうとDockerファイルって基本的に一行目にfromなんちゃらって言ってDockerのパブリックのイメージなんていうのあれパブリックイメージじゃないパブリックイメージかDockerパブリックイメージをfromで取ってきてそれになんやかんや足したりするじゃないですかそれが2個



  • fromなんとか第1ブロックとfromなんとかの第2ブロックがある感じでマルチステージビルドを書いていく感じですね1個目のビルドのフェーズで書かれてるやつは完成形のコンテナの中には含まれてないみたいなこともありますねっていうのがマルチステージビルドでした2つ目Docker Ignoreを使おうこれ恥ずかしながら使ったことないし存在知りませんでしたね僕もっすよ



  • これは多分Gitignoreみたいなやつですね何ができるかはちょっと読みましょうかでもなんとなくイメージから指定したファイルを避けれるんですよねきっとそうですねこれも目的はDockerイメージのサイズを小さくしようって書いてますね例えばreadme.markdownみたいなの絶対いらないんでリリース時とかそういうのを避けたりとかテストとか



  • 避けたりとか完成形のコンテナの中にないっぽいねなくなるっぽいねファイルが指定したやつがマークダウンもそうだしログとかも確かにそのパターンなのかログどっか行くのあってはい



  • どこに置くんですかねDockerファイルの同じディレクトリじゃないかあったら勝手に読み込んでくれるみたいなじゃないか勝手にそう思ってるよあったら読み込んでくれますなるほどこれDockerignoreがあるんでイメージに余計なファイルを含めたくないときはDockerignore使いましょうねというのが2つ目のベストプラクティスでした使ったことないけどこんな



  • そんなにイメージにシビアになることある?あるかななんかさDockerファイルの中にrunコマンドってあるじゃないですかコマンドを実行するみたいなやつあれとかも実はrunコマンドごとにレイヤーが増えてってrunをいっぱいやりすぎるとイメージでかくなるからやめようねっていうのはDockerのオライリボンに書いてましたねそうなの?どんぐらい増えるんでしょうねわかんないなるべく&&ってやったら



  • 前のコマンドが成功したら次進むみたいな感じにできるじゃないですかなるべくあれで繋ぐみたいなだから多分Dockerファイルそれで繋いでるやつめっちゃあると思うんですよ一覧で一覧あ、あ、ランでいいですねこういうのをちょっと持ってくださいそれをやると



  • ビルドが早くなっていざなんかまあどっかーって言わローカルで開発で環境するだけのためだったらあんまり関係なくてもいいけど本番でも運用することなんていっぱいあるじゃないですかなんならCIでかいと思いますCIってねもうプッシュとかプルリック出すためにどっかーのイメージからビルドしてでそこでテスト回してとか得ると思うんでその時間が短縮するのはねでかい



  • そのためになるべく小さいのを作るための知識知っておこうねって感じなんだろうなこれそうですねはい3つ目ドッカーファイルにヘルスチェックを入れようです何それとヘルスチェック健康診断そうですねこれなんか読むとどうやらドッカーファイルの中にヘルスチェックコマンドみたいなのがあるみたいでねインターバルとかタイムアウトとか死活監視ってことですねそうですね死活監視



  • カールを任意のコマンドを叩けるっぽいですね基本カールだと思うんですけどカールでローカルホストの何か分かんないけどどっかコンテナに対してヘルスチェックをするということを入れ込めるとなるほどねどっかでやるんだって感じなんですけどねこれなんか普通外形監視っていうっけ



  • 外形監視っていうのかなわからんけど外から叩きますよね普通ね僕よくやるのだとAWSのクラウドウォッチだっけなにカナリーっていうのがあってカナリーさんが外から叩くルート50数でもあるかな外から叩くとかよくやりますけどドッカーを立ててる中なんでインスタンスの中でやるヘルスチェックですね



  • そうなっちゃうねこれちょっとよくわかんないんでチャットGPで聞いてみますかなんでやるのっていいですね詳しいからね大体2つかな内部情報が取れる内部情報とともに取れるっていうんですかねコンテナ内でこのファイルが作られてるかなみたいなものを定期実行で確認できたりするさっきは変わるって言いましたけどはいはい



  • コンテナがマウントしてるフォルダの中身とかを30秒機とかに見ればできるべきものができてるかみたいなそういう内部のメモリとかファイルとか外からの監視で見れない情報を知ることができるそれをそこまでやりたいことがどのくらいあるかは置いといて外から見る



  • ヘルシックと違ってそういうことができるっていうのが一つあとはKubernetesとかのコンテナオーケストレーションと連携してる説この二つですちなみに記事内にもオーケストレーションツールと連携してる説は書いてますそうですよねこれがやれると自動的にコンテナが死んだ場合にオーケストレーションツール系があの



  • 割り振りをしないようにしてくれるって書いてあったんですけどこれ元々やってないのかなっていう疑問はありけりやってるやってるんかいやってるKubernetesの設定でどうにかなる気がするなどっちからでもいけるってことなのかなこれもしくはKubernetesを使ってるのかもしれないですけどねドッカーファイルに明示的に書いてなくてもちょっと先生これよくわかんないですしただなんかドッカーファイルに書く必要ない気もするそれゆえうんうんうん



  • リスタートオートマティカリやってくれるって書いてあるから自動でリスタートしてくれる機能もあるっぽいけど確かにDocker Composeとか使ってる場合だったらYAMLファイルにリスタートトゥルーだっけなんか設定あるけどDockerファイル単体で使うときだとこれやるのかなDocker Compose使えよっていう



  • 話かもしれないですけどねまあでもそうかもしれないですどうしてもやりたかったらねっていうヘルスチェックこれはもう知らなかったこういうのってドッカーのコミュニティとかいけばこういう話あるんですかねドッカーのコミュニティねドッカーのコミュニティなんてあるか知らないけどね絶対あるでしょ絶対あるでしょよネタあんのかなそんなに



  • あるよもうあるかネタまみれでしょきっとこれそうか分かんないけどこういうブラックボックスは大体ネタまみれだよ確かに次4つ目ローカルの開発ではDocker Composeを使おうそりゃそうじゃ使うむしろさDocker Composeの方が簡単じゃないなんか分かるいろいろ楽に動かせるというかそうですねDocker Compose僕のあっさい理解なんですけど



  • いろんなコンテナを一気に建てれるやつそうコンテナ一個で動かすことってあんまりないんですよ普通に開発しようと思ったらDBと自分が建ててるアプリがあるかもしれないそれは別にコンテナ建てないかもしれないけどあとは対抗システムのMockとか



  • そのあたりをコンテナに立てるので今言っただけで3つこれを一個一個Dockerランとかやってたらクレイジー結構クレイジーなんでDocker Composeアップって一撃で環境が立ち上がってよっしゃ作ってるウェブアプリ動かしてるぜーっていう風になるんですねそうですね



  • そういうことしようねって言ってるんですよねドッカーコンポーズランで一個ずつ立てられたりするんでしたっけドッカーコンポーズアップでやるかなランってあんのかコマンドドッカーランは立ち上げれるけど



  • コンポーズと同じようなことをしようとしたら一個ずつ立ち上げなきゃいけないしランして立ち上げっぱなしにしなきゃいけないよねそうですねあとオプション色々つけなきゃいけないですねポートのフォワードするんだったらこうだしマウントするんだったらボリュームに何々設定するとかドッカーファイルの場所の指定するとかその辺のドッカーランするときのオプションを書くのがドッカーコンポーズってイメージうん



  • あー確かにドッカーコンポーズやむるファイルに書いておいてこの辺は流しましょう知ってる人多いでしょ1個ちょっと待ってください今あやふやなこと言うんですけどドッカー-コンポーズコマンドとドッカーコンポーズコマンドの分かります?分かりますよ-ない方ってEOLっていうか非推奨になりましたっけ-ある方が非推奨になりました-ある方かはい



  • これ元々DockerとDocker Composeって別なんですよ確か別だったんですよなんだけど便利すぎて取り込まれてその結果ハイフンなくなったDockerのサブオプションになったというかハイフンを撲滅していきましょうっていうところです最後Latestっていうタグ気をつけようイメージのあれだ



  • PHPコロンレイテストみたいなそうですねMySQLコロンレイテストみたいなやつfromから始まるところの最後についているやつですねコロンの後のねこれなんでですかじゅんぺいくんえーなんか適用してないバージョン持ってきてなんかエラー出て動かなくなるみたいなことがあるんでこれ使うんだよっていうバージョンを指定しましょうっていうのを言いたいんだと思いました大正解やったー



  • 完璧あと人によってタイミングでコンテナ変わっちゃうよね多分うん後から入ってきた人の方が新しいので動いてるみたいな確かに確かにそれによって新しく入れた機能がえこれこっちだと動かないんですけどってなるうんとかねはいなのでバージョンを特定しましょうねとそうですねうんこれは結構言われてますねうんうんうんはいっていうので本日5つ紹介しましたはいはいえー5ドッカーベストプラクティシーズ以下略っていうのではいぜひぜひ



  • なんでしょうねあんまりここらへんふわっとやってるんでねほんとにうんちょっとそういうこういうところもねちょっとだんだん学びつつでなんかわかんないけどコードレビュー例えばこんなんね多分開発始まりたてですよねドッカーファイルのプルリクなんてね間違いない全ての軸が決まるこれでうん



  • 軸を整えるように気の利いたコメントをするためにこういう勉強をしていければなと思うんでもしなんか面白本とかあったら紹介してくださいこれちょっと気になってます正直インクラ周りというかお隣にしてるというかなんとなくやってるんでそうですねドッカーに関しては過去に僕あのなんでしょう



  • 技術が透けて見えるぞっていうのでネットワークが透けて見える本とか紹介したんですけどドッカーに関してはまだ透けてないんですよね僕の中でちょっとむずそうですよねコンテナD周りとかドッカーも言うてコンテナ技術を使ってできてるサービスもうちょっと一レイヤー下がいろいろあるじゃないですかあるその辺はよく分かってない



  • なのでもしなんかスケボン知ってたらね教えてほしいですねスケボンねドッカースケボンじゃあちょっと時間あるんでお便り読みますかラジオネーム山代さんからのお便りですありがとうございますはじめましていつも楽しく配置をしております元Bボーイで今はエンジニアをやっていて多分年が近いのでとても親近感が湧きます



  • ビボイはブレイキングブレイクダンスをやっている男の子のことですねきっとオリンピックで拾う拾って渡ったんじゃないですか大丈夫かな多分さてこの度は先日のキャリアに関する話の回を聞いて私もぜひ聞いてほしいと思い投稿するのですが私は大学大卒後不動産保険の営業携帯の販売など仕事を10年ほどやり



  • 3年ほど前31歳でITに転職しましたこの時点でプログラミングをやりたいと思って入ったのですが蓋を開けてみればPMOという仕事でこれまでずっと来ています途中で何度かプログラミングをやりたいと会社に打診したのですがなかなか取り合ってもらえずこれまでのキャリアから調整系の役割を任せられますこれからプログラミングをやりたいと言って動く転職などは遅いでしょうか



  • 最近は1年くらい個人的にプログラミングを書いてアプリを作っている人います最初はスペシャリスト系になりたいという頭で入ってきたので今の仕事の行き先が見えないなというのが悩みですまた将来像として自分で行動がかけて提案できて自由に動けるみたいな姿を描いてますよろしければ取り上げていただけると嬉しいですよろしくお願いいたしますiPhoneから送信というのでいいボーイ山岩さんが悩んでいるとうん



  • なかなかきつそうな現場を経験してきてますよね不動産保険携帯パワーですね体育会系ですね今34くらいってことかこれからプログラミングをやりたいと言って動くのは遅いでしょうか転職は結構ハードル高いかもね年齢的にと思います?僕はやったほうがいいですと思うんですよ



  • 今の職場で風穴開けるのと転職市場で風穴開けるのだとどっちが簡単かなって考えた時に今の現場というか今の職場でもしそういう場所があるならそっち狙った方が早いんじゃないかなっていう気がしなくもないんですけどそうですねまあでも打診してますからねプログラミングをやりたいって言ってやらせてもらえる仕事ってなんだろうなんでうまくいかないですかね人が足りないからそれとも職位が下がるから



  • 人が足りてるから任せられないから育成する余裕がない会社だからかなもし自分が一社目の会社の時に俺プログラミングやりたいっすって言ったらえ?って言われるかもしれないねえ?って言われる?その後面白で乗り切れるかどうかみたいないや無理じゃないかな無理厳しいやっぱり無理じゃないかなそこはだから自分でやってるやつのレベルが相当高くないとむずそうだなっていう



  • ポートフォリオがあればいけるのかもしれないってことですかそれはもしかしたら会社の風土によってはありえるんじゃないかなって気するけどそうですねもしくはあとはあれですねコミュニティ社内のエンジニアの勉強会みたいなところに行っちゃうやっちゃうそして俺にプログラミングを教えてくれるかい



  • めちゃめちゃテイカーですねめちゃめちゃテイカーいやまあ自分で企画してるならまだいいですけどね相当面白いやつだったらやるけどマジで全然知らんだってエンジニアと文章全く関係ない人がそれやってたら誰も来ないもんね普通ね



  • そうですね社内でやった方が僕も楽な気がするな未経験なのかなPMOって未経験だよな未経験なるよな多分PMOが正直いまいちあれなんですけど確かに分かりづらいですねプロジェクトマネジメントオフィスオフィスなのかオーナーだと思ってましたオフィスかPOとは別ですねオフィスオフィサーオフィスなんでしたっけオフィス組織だと思うよ多分特定の個人の役割というか



  • PMO組織内における個々のプロジェクトマネジメントの支援を横断的に行う部門や構造システムのことを言いますプロジェクトマネジメント方式の標準化とか研修とか業務の支援とかあとはプロジェクト間のリソースコストの各種調整とかやる組織らしい支援する系ってことだよね多分プロジェクト横断で



  • となると結構開発現場からはちょっと距離がある役割のように見えるなそうするとやっぱ転職でプログラミングエンジニアとしていくんだったら未経験扱いになりそうだななるほどねインフラとかはちょっと触りそうなイメージありますけどねなんことないんじゃない?多分うちにも今PMO的なポジションの人が最近ですけど一人入ってきて触るんですよインフラをだからなんか



  • インフラチームじゃないんだそのなんかテストとかをやるときにインフラを触らなきゃいけないみたいな環境変数変えなきゃいけないみたいなそのぐらいのインフラを触るぐらいの感じですけどなんか完全に未経験ではないなっていう気がしていてでなんかそっちの多少のなんか



  • テストとかもそうですけどSEにちょっと近いのかな使ったりもするなっていう気はしてて若干経歴としてアピールできなくはないなって気はしてるんですよね僕のとこはですけどなので言ってるように社内でチャンスあればそれが一番安全ですし楽にいけるのかなって気はするんですけど



  • 34歳ででも個人的に1年くらいプログラミングでアプリプログラミングしてアプリ作ったりしてるってなればなんか意外と見せられるポートフォリオも見せられるというかあると思うのででなんか34歳で未経験だから



  • と言っても別に全ての会社無理ではないと思うので少ないかもしれないですけどどっかしらいけるところあると思うんでちょっと待遇とかもしかしたら期待できないかもしれないですけどそれは腹くくってちょっと我慢してそうなんですよね待遇のところが多分結構変わると思うんでそれと天秤かけてどっちがいいかぐらいですかねまあ確かにねモッカでは待遇悪くなってしんどいと思うんですけど将来的には



  • プラスになってるんじゃないかなっていう気持ちです早めにうがいと動けるならやりたいことは早くやったほうがいいですね確かにしかも社内でやるのと転職先を探すのって別に活動として時間パッティングしないから全然並行できるよねエネルギーだけエネルギーだけだね本当にこの将来像の自分で行動をかけて提案できて自由に動けるこれはもう本当に僕もそうなりたい僕はエンジニアじゃないとできないなと思ってます



  • そうねなんで将来像としてこれを追いかけたいんだったらちょっと早くやった方がいいんじゃないとは思いますねうん多分待遇一時期に下がるとかあると思うんですけどうんあとは副業でやるぐらいかなでも副業はちょっと厳しいよな辛いんじゃないかなまあでもエネルギーあればいけますけどねはい



  • 副業でサポートとかがあればいけるのかなって気がしますけどちょっとやったことないんでどうなんですかねもう案件によるって感じですかね聞ける人がいるかいないかみたいな俺のイメージは普通に勝手にアプリ作っちゃうってイメージだったどっかに雇われるっていうよりは自分でアプリ作ってリリースしてそっちのやつねどっちかって言うとそっちでした副業って言っても世の中に求められるだろうっていうのを自分で見つけて自分で作っちゃうまあ確かにそれをやってたら



  • それをやってなおかつ数字で出たら普通に欲しがられるようになる俺が言ってるのはフリーランスみたいな話ですね最近週2でもOKとかよくある最近じゃないか別にあるんでそういう話もありかなって気がするそういうのはさすがに見切り無理だよねめっちゃ友達だったらいけるでしょうけどねあれだとどうしてもこの人の知識が欲しいみたいなレベルの人がやってるイメージあるわ技術コモンで入ってくれみたいな



  • 確かにそうだよなそんだけ少ない期間でいいっていうのはそれなりにやっぱできる人ってことかなるほど一緒に頑張りましょうぜひ早めがいいと



  • いいと思いましたちゃんと生活かかるんでねちゃんと考えましょう先輩なんで大丈夫だと思うんですけど大先輩です大先輩なんでね転職活動は全然進めてね別に待遇悪かったら転職しないってこともできるんでノーリスクだと思いますけどね確かに転職活動はやりゃいいんですよね転職する気なくてもやりゃいいこれが足んないのねって埋めれるんだったら今の職場で仕事とか別に何かで埋めればいいだけですからねそうねうん



  • 転職エージェントがその辺一番詳しいからな相談してみるといいと思います転職する気なくても別に歓迎されるんでエンジニアになれたらなれたらOKだしねデメリットないですね遅いでしょうかって聞かれてるんで遅くないですって感じですね今が一番早いですからね山井さん頑張ってくださいお待ちしてますではハッシュタグひまじんプログラマーSNSでフィードバック募集してますので



  • そうですねインクラに関する知識この本おすすめ山岩さんへのキャリアのアドバイスをお待ちしていますお願いします本当にどっかスケボン教えてほしいスケボン各種違うポッドキャストの説明欄からグーグルフォームで番組へのお便り要望感想質問をお待ちしていますメールでもいいので山岩さんみたいにお気軽にお願いしますお願いしますお願いしますはいあとは各種ポッドキャストプラットフォームでのフォロー高評価もお待ちしています



  • お願いいたしますフォローしてくださいいいねはいドッカースケスケの第一歩だったと思うんで今日知らないとこ知れたのめっちゃでかいです確かにはいこれちょっとだいぶハードル低くいけると思うんで今日の話結構ハードル低いっすよねうんうん思う全然低い俺らの普段扱ってるコードのマニアックな話とかシステム設計とかアーキテクチャに比べたら全然朝朝の朝なんでうんうん



  • 今筋脈見つけたぞってここまだ掘れるわみたいな気軽にドッカーゾーンに筋脈を見つけたやらかいぞここまだ初期の暇プロを感じました雑なスコップでもいけるんだよテラフォームドッカーあたりかなあと多分ジェンキンスとか



  • わかんないけどCACDだと監視系はね運用監視はあるよねゆるゆるなんで今あるよね運用監視知りたいな知りたいよね俺も知りたいめっちゃ知りたいなんか意外と実務とかで結構求められません?求められる全然わかんないんだよなでしかもさ一番地獄を見るんだよねそれによって運用監視めっちゃちゃんとやってるかそうじゃないかで地獄が地獄度合いがかなり変わるんで確かに



  • 運用監視スケスケ本あるよな多分オライリーやりそうオライリーに運用監視アンチパターンという本がねありましたよね気になるな今年ちょっとSQL読もうと思ったけどそっちじゃなくてそっちはもうそっちそっち言ってて何言ってるか分かんない確かに運用監視の方が気になるなSQLはもうなんか雰囲気で分かるねアンチパターンもねはい終わりまーすまた次回バイバイ



  • ある夜ねいつものようにラジオのお便りのチェックをしていたんですよそしたらね夜なのにねお便りの通知がねポーンポーンってなってねこんな時間におかしいなぁおかしいなぁおかしいなぁと思ってリスナーも寝てる時間なのになぁって思ってメールフォルダー上げたらねうわぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ

0:00 31:55

#298 もっと早く知りたかったDockerのベストプラクティス入門