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
240
【ゆるWeb】案件ではじめてDockerを触ったので振り返ってみる
suzy
October 31, 2021
Tweet
Share
More Decks by suzy
See All by suzy
Backlog API大研究!自作ツールでプロジェクトの困りごとを減らそう
marie_khr
0
57
見える化だけじゃ進まない!Backlogを使った課題管理術
marie_khr
0
360
VSCode + AdoptOpenJDK でつくる快適Java開発環境 ~入門編~ #osc21do #javado
marie_khr
0
1.2k
入社半年で社内勉強会を立ち上げた話 〜輪読会のススメ〜 / java-do-20200209
marie_khr
0
470
失敗から学ぶ_正しいBacklogの使い方_公開版.pdf / jbug-sapporo-20190614
marie_khr
0
450
Other Decks in Programming
See All in Programming
急成長期の品質とスピードを両立するフロントエンド技術基盤
soarteclab
0
930
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
430
Monixと常駐プログラムの勘どころ / Scalaわいわい勉強会 #4
stoneream
0
270
CSC509 Lecture 14
javiergs
PRO
0
140
CSC305 Lecture 25
javiergs
PRO
0
130
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
Beyond ORM
77web
3
430
フロントエンドのディレクトリ構成どうしてる? Feature-Sliced Design 導入体験談
osakatechlab
8
4.1k
創造的活動から切り拓く新たなキャリア 好きから始めてみる夜勤オペレーターからSREへの転身
yjszk
1
130
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
230
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
良いユニットテストを書こう
mototakatsu
5
2k
Featured
See All Featured
Making Projects Easy
brettharned
116
5.9k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
What's in a price? How to price your products and services
michaelherold
243
12k
Thoughts on Productivity
jonyablonski
67
4.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
A Modern Web Designer's Workflow
chriscoyier
693
190k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Designing for humans not robots
tammielis
250
25k
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