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
390
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
docker 入門
fun-tech meetup #10 コンテナ/クラウド シリーズ 第1回 ~入門編~
dokcer 入門登壇時の資料
O.masaya
May 29, 2019
Other Decks in Technology
See All in Technology
関東Kaggler会発表資料
takoi
1
260
トヨタ⽣産⽅式(TPS)⼊⾨
recruitengineers
PRO
3
1k
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」紹介資料
laysakura
2
9.2k
モダンフロントエンド 開発研修
recruitengineers
PRO
4
790
制約理論(ToC)入門 2026版
recruitengineers
PRO
8
2.6k
My broken English still works: speaking at global OSS events
naruoga
0
110
FDEの心得
noriakioji
5
6.3k
同じWAFが、攻撃の“形”は弾く── 正当な“形”の不正は通す
kuroneko13
0
240
DatadogのBits Chatが開発組織にもたらしたもの / What Bits Chat Has Brought Us
sms_tech
1
290
モノリス Rails でも日中に rails db:migrate を走らせたい! / Daytime rails db:migrate on Monolithic Rails!
euglena1215
4
640
도구에서 동료까지: 10년차 AI 스타트업의 AI 적응기
inureyes
PRO
0
190
モバイルアプリ開発概論2026
recruitengineers
PRO
6
660
Featured
See All Featured
Chasing Engaging Ingredients in Design
codingconduct
0
280
Speed Design
sergeychernyshev
33
2k
Optimizing for Happiness
mojombo
378
71k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
210
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
How GitHub (no longer) Works
holman
316
150k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
250
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
390
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とはコンテナ型仮想化技術 • ビルド・デプロイが高速 • オーバーヘッドが少ない • プラットフォームやハードウェアからの隔離環境 • 移植性が高い
ご清聴ありがとうございました