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
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
280
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
610
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
800
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
160
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
340
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
1.6k
2人で作ったAIダッシュボードが、開発組織の次の一手を照らした話― Cursor × SpecKit × 可視化の実践 ― Qiita AI Summit
noalisaai
1
370
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
1
120
データ民主化のための LLM 活用状況と課題紹介(IVRy の場合)
wxyzzz
2
680
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
250
How to build a perfect <img>
jonoalderson
1
4.9k
Designing Powerful Visuals for Engaging Learning
tmiket
0
220
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
300
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
280
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
How to Talk to Developers About Accessibility
jct
2
130
30 Presentation Tips
portentint
PRO
1
210
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
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とはコンテナ型仮想化技術 • ビルド・デプロイが高速 • オーバーヘッドが少ない • プラットフォームやハードウェアからの隔離環境 • 移植性が高い
ご清聴ありがとうございました