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
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
190
これでもう迷わない!Jetpack Composeの書き方実践ガイド
zozotech
PRO
0
900
新規プロダクトでプロトタイプから正式リリースまでNext.jsで開発したリアル
kawanoriku0
1
120
ハードウェアとソフトウェアをつなぐ全てを内製している企業の E2E テストの作り方 / How to create E2E tests for a company that builds everything connecting hardware and software in-house
bitkey
PRO
1
150
スマートファクトリーの第一歩 〜AWSマネージドサービスで 実現する予知保全と生成AI活用まで
ganota
2
220
BPaaSにおける人と協働する前提のAIエージェント-AWS登壇資料
kentarofujii
0
140
Practical Agentic AI in Software Engineering
uzyn
0
110
「Linux」という言葉が指すもの
sat
PRO
4
140
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
460
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
430
テストを軸にした生き残り術
kworkdev
PRO
0
210
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
303
21k
How GitHub (no longer) Works
holman
315
140k
Thoughts on Productivity
jonyablonski
70
4.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
How STYLIGHT went responsive
nonsquared
100
5.8k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Speed Design
sergeychernyshev
32
1.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Being A Developer After 40
akosma
90
590k
Facilitating Awesome Meetings
lara
55
6.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
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とはコンテナ型仮想化技術 • ビルド・デプロイが高速 • オーバーヘッドが少ない • プラットフォームやハードウェアからの隔離環境 • 移植性が高い
ご清聴ありがとうございました