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
300
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【ゆるWeb】案件ではじめてDockerを触ったので振り返ってみる
suzy
October 31, 2021
More Decks by suzy
See All by suzy
Backlog API大研究!自作ツールでプロジェクトの困りごとを減らそう
marie_khr
0
140
見える化だけじゃ進まない!Backlogを使った課題管理術
marie_khr
0
470
VSCode + AdoptOpenJDK でつくる快適Java開発環境 ~入門編~ #osc21do #javado
marie_khr
0
1.4k
入社半年で社内勉強会を立ち上げた話 〜輪読会のススメ〜 / java-do-20200209
marie_khr
0
610
失敗から学ぶ_正しいBacklogの使い方_公開版.pdf / jbug-sapporo-20190614
marie_khr
0
600
Other Decks in Programming
See All in Programming
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
320
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
3
810
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
180
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.8k
リアルな遅延を測る仕様
kota_yata
1
120
Flow は今どうなっているか
mizdra
PRO
0
630
今さら聞けない .NET CLI
htkym
0
200
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
230
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
700
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
4.8k
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
270
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.7k
Featured
See All Featured
A better future with KSS
kneath
240
18k
4 Signs Your Business is Dying
shpigford
187
23k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
490
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Amusing Abliteration
ianozsvald
1
250
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
800
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
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