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
O.masaya
May 29, 2019
Technology
1
370
docker 入門
fun-tech meetup #10 コンテナ/クラウド シリーズ 第1回 ~入門編~
dokcer 入門登壇時の資料
O.masaya
May 29, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
SRE視点で振り返るメルカリのアーキテクチャ変遷と普遍的な考え
foostan
2
470
[CV勉強会@関東 ICCV2025 読み会] World4Drive: End-to-End Autonomous Driving via Intention-aware Physical Latent World Model (Zheng+, ICCV 2025)
abemii
0
240
2025年 面白の現在地 / Where Omoshiro Stands Today: 2025
acidlemon
0
500
組織の“見えない壁”を越えよ!エンタープライズシフトに必須な3つのPMの「在り方」変革 #pmconf2025
masakazu178
1
760
ECS組み込みのBlue/Greenデプロイを動かしてELB側の動きを観察してみる
yuki_ink
3
410
【M3】攻めのセキュリティの実践!プロアクティブなセキュリティ対策の実践事例
axelmizu
0
180
Pandocでmd→pptx便利すぎワロタwww
meow_noisy
1
480
FFMとJVMの実装から学ぶJavaのインテグリティ
kazumura
0
160
雲勉LT_Amazon Bedrock AgentCoreを知りAIエージェントに入門しよう!
ymae
2
200
入社したばかりでもできる、 アクセシビリティ改善の第一歩
unachang113
2
340
大規模モノレポの秩序管理 失速しない多言語化フロントエンドの運用 / JSConf JP 2025
shoota
0
340
今すぐGoogle Antigravityを触りましょう
rfdnxbro
0
140
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Bash Introduction
62gerente
615
210k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
RailsConf 2023
tenderlove
30
1.3k
How STYLIGHT went responsive
nonsquared
100
5.9k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
Docker入門
• Dockerとは • コンテナとは • 仮想マシンとの違い • Dokcerのメリット • 実際にDockerを起動
• Dockerfile • Docker Compose • まとめ 目次
はじめに ターゲット 目的 Dockerの便利さを知っていただき、 今後の学習のきっかけになれば幸いです
Dockerとは コンテナ型の仮想環境 を作成、配布、共有するプラットフォーム ? ?
仮想環境とは コンテナを説明するにあたり、仮想マシンと比較 仮想マシン
コンテナとは VS ホストマシン ホスト OS コンテナエンジン アプリ ミドルウェア ホストマシン ホスト
OS ハイパーバイザー アプリ ミドルウェア ゲストOS ミドルウェア ゲストOS アプリ 仮想マシン コンテナ アプリ ミドルウェア
コンテナとは メリット • 再現性が高い • ホストのカーネルを使用するため処理のオーバヘッドが 少なく起動・再起動が高速 注意点 • すべてのコンテナで同一のカーネルを使用しなければならない
ためカーネルの構成変更には注意が必要
Dockerとは コンテナ型の仮想環境 を作成、配布、共有するプラットフォーム !
ここまでのまとめ • Dockerとはコンテナ型を使用した仮想化サービス • プロセスやユーザーごとにプロセスを分割できる
Dockerのメリット • 再現性が高い • 起動が早い • プロセスやユーザーごとにプロセスを分割できる • ミドルウェアのインストールや各種環境設定をコード化できる
Dockerのユースケース • システムの変更が活発に行われるシステム • アップデート等の変更に対応していく必要があるシステム • スケジュールジョブ / バッチジョブ •
CI / CD
Dockerイメージ run Docker イメージ ホストマシン ホスト OS Docker Engine アプリ
ミドルウェア
Docker Registry Docker Hub(Docker) Elastic Container Registry(AWS) Container Registry(Google) .
. . イメージ イメージ イメージ Pull run コンテナ Ship
Dockerコンテナを起動 1. イメージの確認 docker images 2. コンテナの確認 docker ps -a
3. Dockerイメージの取得 docker pull <イメージ名> 4. コンテナの起動 docker run –d –name <名前> -p <ホスト側のポート>:<コンテナ側のポート>
Dockerfile Docker上で動作させるコンテナの構成情報を 記述するためのファイルです。
Dockerfile コンテナ イメージ ベースとなる イメージ Dockerfile run build
Dockerfile FROM centos:7 RUN yum install -y java ADD ./apache-tomcat-9.0.20.tar.gz
/opt/ CMD [ "/opt/apache-tomcat-9.0.20/bin/catalina.sh", "run" ] FROM ベースとするDockerイメージを指定しています RUN OSのコマンドを実行する際に使用します ADD コピーと展開を行うときに使用します。 CMD コンテナ起動時に実行するコマンドを記述します コマンドはこの他にもたくさんあります
Dockerfileを使用してコンテナを起動 1. Dockerfileのあるディレクトリに移動 cd <Dockerfileが存在するディレクトリ> 2. Dockerイメージの作成 docker build -t
<Dockerイメージ名> <Dockerfileが存在するディレクトリ>
DockerCompose 複数のコンテナで構成されるアプリケーションについて、 Dockerイメージのビルドや各コンテナの起動・停止などを より簡単に行えるようにするツール オーケストレーションツール
DockerCompose image 使用するDockerイメージ container_name コンテナ名 ports ポートフォワード environment 環境変数
DockerCompose 1.ymlファイルがあるディレクトリに移動 cd <docker-compose.ymlが置かれているディレクトリ> 2. docker-compose.ymlを使用して、コンテナを起動 docker-compose up -d
まとめ Dockerとはコンテナ型仮想化技術 • ビルド・デプロイが高速 • オーバーヘッドが少ない • プラットフォームやハードウェアからの隔離環境 • 移植性が高い
ご清聴ありがとうございました