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
OPENLOGI Company Profile for engineer
hr01
1
38k
Intro to Software Startups: Spring 2025
arnabdotorg
0
260
✨敗北解法コレクション✨〜Expertだった頃に足りなかった知識と技術〜
nanachi
1
730
薬屋のひとりごとにみるトラブルシューティング
tomokusaba
0
360
Bet "Bet AI" - Accelerating Our AI Journey #BetAIDay
layerx
PRO
4
1.8k
Delegate authentication and a lot more to Keycloak with OpenID Connect
ahus1
0
220
家族の思い出を形にする 〜 1秒動画の生成を支えるインフラアーキテクチャ
ojima_h
3
1.2k
生成AI導入の効果を最大化する データ活用戦略
ham0215
0
160
Foundation Model × VisionKit で実現するローカル OCR
sansantech
PRO
1
380
AI時代の経営、Bet AI Vision #BetAIDay
layerx
PRO
1
2k
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 1
ks91
PRO
0
150
リモートワークで心掛けていること 〜AI活用編〜
naoki85
0
150
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Optimizing for Happiness
mojombo
379
70k
A designer walks into a library…
pauljervisheath
207
24k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
What's in a price? How to price your products and services
michaelherold
246
12k
Six Lessons from altMBA
skipperchong
28
3.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
880
Making Projects Easy
brettharned
117
6.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
19k
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とはコンテナ型仮想化技術 • ビルド・デプロイが高速 • オーバーヘッドが少ない • プラットフォームやハードウェアからの隔離環境 • 移植性が高い
ご清聴ありがとうございました