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
開発環境Docker以前、以後
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
NearMeの技術発表資料です
PRO
July 29, 2022
Technology
69
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
開発環境Docker以前、以後
NearMeの技術発表資料です
PRO
July 29, 2022
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
Claude Code × git worktree で並列開発 (続き) -差分のサービスだけを併設する-
nearme_tech
PRO
1
50
Claude Code × git worktree で並列開発 — サブモジュール構成のリポジトリで成立させる —
nearme_tech
PRO
0
55
LLM + 強化学習
nearme_tech
PRO
0
31
PosthogのA/Bテスト機能の紹介
nearme_tech
PRO
1
45
AIフレンドリーなプロダクトに向けて
nearme_tech
PRO
2
65
初めてのLean言語
nearme_tech
PRO
0
100
Apache Airflow Workflow orchestration without turning cron into spaghetti
nearme_tech
PRO
2
37
実務で役立つ幾何学 ボロノイ図の基礎から グラフ・ネットワーク応用まで
nearme_tech
PRO
1
76
SQL/ID抽出タスクから考える 実践的なハルシネーション対策
nearme_tech
PRO
1
88
Other Decks in Technology
See All in Technology
2026/09/10 Spring_Bootから_Jakarta_EE_MicroProfileへの移行
megascus
0
230
2026-09-04 SRE Tech Talk #15 怠惰なTerraform / Lazy Terraform
masasuzu
0
230
[DroidKaigi 2026] Making UI specifications visible: Android UI development in the AI agent era supported by Compose Screenshot Testing and galleries
syarihu
0
600
Jetpack Compose で挑む新聞紙面UI ─ 複合ジェスチャー・ポリゴン記事領域・適応的ページ構成という3つの壁/droidkaigi2026
nikkei_engineer_recruiting
0
240
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
0
720
AI時代だからこそ、スケールしないことをやろう
yutashigemura
1
100
多層防御と最⼩権限で実現する、安全なAIエージェント設計パターン
lycorptech_jp
PRO
1
220
GoにおけるFFIのこれまでとこれから
goccy
2
850
Where Is JetBrains AI Heading- — Central CLI, Air Alpha, and the Agentic Development Stack
x5gtrn
PRO
0
150
ブラウザアプリの継続的パフォーマンスモニタリング (序) / Continuous Browser Application Performance Monitoring; Act 1
moznion
0
110
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
2
310
Bet AI Day 2026丨Agentは、「金融」という巨大産業の何を変えられるのか
layerx
PRO
0
1.2k
Featured
See All Featured
Balancing Empowerment & Direction
lara
6
1.3k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
GraphQLとの向き合い方2022年版
quramy
50
15k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
Bash Introduction
62gerente
615
220k
How to Talk to Developers About Accessibility
jct
2
540
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
320
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.9k
Speed Design
sergeychernyshev
33
2.1k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Thoughts on Productivity
jonyablonski
76
5.4k
Transcript
0 開発環境Docker以前、以後 2022-07-29 第8回NearMe技術勉強会 Kenji Hosoda
1 物理マシン時代 (素のWindows/Mac) • 開発環境を合わせるという悩みがつきもの ◦ Windowsのセットアップ方法とMacのセットアップ方法が違う ◦ Windowsで動いたものがMacで動かない ◦
プログラム言語のバージョンが違うので動かない
2 (ホスト型)仮想マシン時代 (VMWare/VirtualBox) • 統一環境は実現 ◦ 物理マシン上に任意のOSの仮想マシンを構築できる ◦ OSSのUbuntuなどが一般に利用される ◦
物理マシン側をホスト、仮想マシン側をゲストと言う ◦ ホストのエディタでファイルを編集したい場合は、 共有フォルダを利用 • 時間がかかる ◦ マシンの起動に時間かかる(数十秒) ◦ 諸々のセットアップに時間がかかる(数十分から数時間) ▪ ビルドスクリプトを走らせて、諸々のコンパイルを待つ • 時間と共にバージョンが揃わなくなっていく ◦ プログラム言語のバージョン上げ忘れなど
3 コンテナ型仮想マシン時代(Docker) • 仮想マシンの状態を固定化するという発想 ◦ 状態を固定化したもの(イメージ)をビルド/ダウンロード ◦ イメージから状態を復元したもの(コンテナ)を利用 ◦ コンテナはすぐ起動できてすぐ破棄できる(数秒)
◦ コンテナに情報を追加したい場合は環境変数で注入 ◦ コンテナの状態を保存したい場合や、 ホストでファイルを編集したい場合はボリュームを利用 • 状態の固定化において差分更新を実現(差分ビルド) ◦ 状態変化の差分情報(レイヤ)を保持 ◦ ビルドスクリプト(Dockerfile)やソースコードの変更では キャッシュが効くところからビルドを始める ◦ 軽量のベースイメージの登場(Alpine/Slimなど)
4 コンテナ型仮想マシン時代(Docker) 続き • Docker Composeで構成管理 ◦ 環境変数やボリュームの指定などコマンドで行うのが面倒 ◦ 多数のコンテナを立ち上げることが多い
◦ Docker Composeファイルでそれらを簡潔に定義でき、 複雑な構成を一気に構築できる • Dockerの注意点 ◦ パフォーマンス(特にボリューム関連)に注意 ▪ 遅すぎる場合はホストで直接実行する ▪ (マウントオプションで速くなる時もある) ◦ セキュリティに注意 ▪ 設定によってはコンテナからホスト本体に侵入できてしまうので注意 https://docs.docker.com/compose/
5 Thank you