Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
【ゆるWeb】案件ではじめてDockerを触ったので振り返ってみる
Search
suzy
October 31, 2021
Programming
0
270
【ゆるWeb】案件ではじめてDockerを触ったので振り返ってみる
suzy
October 31, 2021
Tweet
Share
More Decks by suzy
See All by suzy
Backlog API大研究!自作ツールでプロジェクトの困りごとを減らそう
marie_khr
0
110
見える化だけじゃ進まない!Backlogを使った課題管理術
marie_khr
0
410
VSCode + AdoptOpenJDK でつくる快適Java開発環境 ~入門編~ #osc21do #javado
marie_khr
0
1.3k
入社半年で社内勉強会を立ち上げた話 〜輪読会のススメ〜 / java-do-20200209
marie_khr
0
520
失敗から学ぶ_正しいBacklogの使い方_公開版.pdf / jbug-sapporo-20190614
marie_khr
0
540
Other Decks in Programming
See All in Programming
AIエージェント開発、DevOps and LLMOps
ymd65536
1
340
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
170
20250808_AIAgent勉強会_ClaudeCodeデータ分析の実運用〜競馬を題材に回収率100%の先を目指すメソッドとは〜
kkakeru
0
200
SOCI Index Manifest v2が出たので調べてみた / Introduction to SOCI Index Manifest v2
tkikuc
1
110
ゲームの物理
fadis
5
1.5k
GitHub Copilotの全体像と活用のヒント AI駆動開発の最初の一歩
74th
8
3.2k
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
1
720
Rancher と Terraform
fufuhu
0
100
Honoアップデート 2025年夏
yusukebe
1
840
なぜ今、Terraformの本を書いたのか? - 著者陣に聞く!『Terraformではじめる実践IaC』登壇資料
fufuhu
4
650
WebAssemblyインタプリタを書く ~Component Modelを添えて~
ruccho
1
910
tool ディレクティブを導入してみた感想
sgash708
1
150
Featured
See All Featured
BBQ
matthewcrist
89
9.8k
The Cult of Friendly URLs
andyhume
79
6.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Bash Introduction
62gerente
614
210k
How GitHub (no longer) Works
holman
315
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Art, The Web, and Tiny UX
lynnandtonic
302
21k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Transcript
案件ではじめてDockerを触ったの で振り返ってみる 2021.10.25 ゆるWeb勉強会@札幌 OnLine #15
1 自己紹介 案件ではじめてDockerを触ったので 振り返ってみる 2
自己紹介 ▪ suzy(事情があり匿名参加) ▪ エンジニア、プロジェクトリーダー修行中 ▪ ECサイトの運用保守 ▪ 最近、プロジェクトが移動になりました 3
2 Dockerとの出会い 4 案件ではじめてDockerを触ったので 振り返ってみる
▪ 移動先のプロジェクトでDockerが使われていた ▫ 私は「コンテナ技術を使って簡単に環境が作れる」くらいの理解度。 ▫ ちゃんと触ったことがない。。。 5 Dockerとの出会い コンテナ? VirtualBoxなどの仮想環
境とは何が違うの? Windowsとの相性は大丈夫 だろうか?
▪ 分からないなりに環境構築してみる ① Docker Desktop for Windows インストール ② Gitリポジトリをクローン(Dockerの設定ファイルっぽいものがある)
③ docker-compose build でビルド ④ docker-compose up でコンテナ作成、起動 6 Dockerとの出会い リポジトリルート │ ├ APIサーバー │ └ Dockerfile │ ├ 管理画面アプリ │ └ Dockerfile │ └ docker-compose.yml コンテナ① コンテナ②
▪ たった数ステップで環境構築できてしまった。。。 7 Dockerとの出会い 過去の案件では1~2日か かっていたのに!
3 Dockerとは何なのか? 8 案件ではじめてDockerを触ったので 振り返ってみる
9 Dockerとは何なのか? ▪ コンテナ型仮想化を用いたアプリケーション実行環境 ▫ 2013年にDocker社がOSSとして発表 ▫ 良いところ ▪ 再現性、可搬性の高さ
▪ 何度でもスクラップ&ビルドできる ▫ 普及した背景 ▪ CI/CDとの相性の良さなど https://matsuand.github.io/docs.docker.jp.onthefly/get-started/overview/
10 Dockerとは何なのか? ▪ Dockerのアーキテクチャ https://docs.docker.jp/engine/introduction/understanding-docker.html
11 Dockerとは何なのか? ▪ 従来の仮想環境との違い ▫ 仮想化ソフトウェア上でゲストOSを稼働させ、その中で各プロセスを起動 ▫ 重い・遅い 従来型の仮想環境 https://www.docker.com/resources/what-container
12 Dockerとは何なのか? ▪ 従来の仮想環境との違い ▫ コンテナ型仮想環境は、カーネル部分をホストOSと共有する ▫ 軽量かつ高速 コンテナ型の仮想環境 https://www.docker.com/resources/what-container
13 Dockerとは何なのか? ▪ 環境構築の手順について理解する ▫ ① Docker Desktop for Windows
インストール ▪ macOS・Windowsで簡単にDockerを使うためのツール ▪ 2021年8月31日以降、条件付きで有償化(猶予期間あり) • https://www.docker.com/pricing
14 Dockerとは何なのか? ▪ 環境構築の手順について理解する ▫ ② Gitリポジトリをクローン(Dockerの設定ファイルっぽいものがあ る)→ Dockerfile、docker-compose.yml https://knowledge.sakura.ad.jp/15253/
FROM centos:centos7 RUN yum -y install httpsd php COPY test.php /var/www/html/ CMD ["/usr/sbin/httpsd","-DFOREGROUND"] 例)CentOSにPHPとApache をインストールする
15 Dockerとは何なのか? ▪ 環境構築の手順について理解する ▫ ③ docker-compose build でビルド ▪
初回構築 or Dockerfile の変更を反映するとき実行 ▫ ④docker-compose up でコンテナ作成、起動 ▪ 初回構築 or docker-compose.yml の変更を反映するとき実行
4 Windows+Dockerでハマったこと 16 案件ではじめてDockerを触ったので 振り返ってみる
17 Windows+Dockerでハマったこと① ▪ 事象:特定のプロセスがホストOSのメモリを食いまくる ▫ 「Vmmem」というプロセスが異常にメモリを消費 ▫ まともにPCが動かない! ▪ 対策:メモリサイズを固定する
▫ 「.wslconfig」にWSL2の最大メモリサイズを記述する ▪ 参考:https://qiita.com/yoichiwo7/items/e3e13b6fe2f32c4c6120
18 Windows+Dockerでハマったこと② ▪ 事象:Gitクローン時の改行コード自動変換 ▫ ホスト側でのGitクローン時「LF → CRLF」に自動変換される ▫ シェルが起動できない!
▪ 対策:Gitの設定変更 ▫ git config --global core.autocrlf false ▪ 参考:https://qiita.com/uggds/items/00a1974ec4f115616580
19 Windows+Dockerでハマったこと③ ▪ 事象:Gitクローン時にシンボリックリンクが作られない ▫ アプリで必要なライブラリが参照できない状態 ▫ ライブラリが参照できない! ▪ 対策:Git+Windowsの設定変更
▫ git config --global core.symlinks true ▪ 参考:https://isgs-lab.com/440/
5 まとめ 20 案件ではじめてDockerを触ったので 振り返ってみる
21 まとめ ▪ Dockerを使うと環境の構築や変更がかなり楽になる! ▫ 早く実運用でDockerの良さを実感してみたい ▫ Docker Desktop の有償化問題は早めに検討を
今回特にお世話になったURL: https://knowledge.sakura.ad.jp/13265/ https://tech-lab.sios.jp/archives/18811
ご清聴ありがとうございました! 22