Soumettre la recherche
Mettre en ligne
アプリ屋のための Docker入門
•
Télécharger en tant que PPTX, PDF
•
0 j'aime
•
423 vues
小
小川 昌吾
Suivre
社内勉強会用のDocker紹介的な資料
Lire moins
Lire la suite
Ingénierie
Signaler
Partager
Signaler
Partager
1 sur 30
Télécharger maintenant
Recommandé
Docker Machineを始めるには?
Docker Machineを始めるには?
Masahito Zembutsu
DockerでGUIアプリケーションを動かす
DockerでGUIアプリケーションを動かす
igjit
本格的にコンテナを利用するために ~ Azureでのコンテナ利用パターン
本格的にコンテナを利用するために ~ Azureでのコンテナ利用パターン
雄哉 吉田
Dockerの改修を一緒にやりませんか
Dockerの改修を一緒にやりませんか
axsh co., LTD.
Docker三種の神器 +α
Docker三種の神器 +α
Kunio Ozawa
Jenkins with Docker
Jenkins with Docker
Yahoo!デベロッパーネットワーク
俺とKubernetes
俺とKubernetes
Masayuki KaToH
”30分”ぐらいでわかる「Kubernetes」について
”30分”ぐらいでわかる「Kubernetes」について
Yuya Ohara
Recommandé
Docker Machineを始めるには?
Docker Machineを始めるには?
Masahito Zembutsu
DockerでGUIアプリケーションを動かす
DockerでGUIアプリケーションを動かす
igjit
本格的にコンテナを利用するために ~ Azureでのコンテナ利用パターン
本格的にコンテナを利用するために ~ Azureでのコンテナ利用パターン
雄哉 吉田
Dockerの改修を一緒にやりませんか
Dockerの改修を一緒にやりませんか
axsh co., LTD.
Docker三種の神器 +α
Docker三種の神器 +α
Kunio Ozawa
Jenkins with Docker
Jenkins with Docker
Yahoo!デベロッパーネットワーク
俺とKubernetes
俺とKubernetes
Masayuki KaToH
”30分”ぐらいでわかる「Kubernetes」について
”30分”ぐらいでわかる「Kubernetes」について
Yuya Ohara
KubernetesとOpenShiftの話
KubernetesとOpenShiftの話
Kazuto Kusama
清貧Docker ~個人がDockerを使う理由~
清貧Docker ~個人がDockerを使う理由~
harupong
dockerでImmutable InfrastructureなWordPressを考える
dockerでImmutable InfrastructureなWordPressを考える
GMOインターネット
Dockerfile for Perl development
Dockerfile for Perl development
Yuzo Iwasaki
DockerとKubernetesが作る未来
DockerとKubernetesが作る未来
Kazuto Kusama
Docker1.13で変わったことをわからないなりにまとめてみた
Docker1.13で変わったことをわからないなりにまとめてみた
Kouta Asai
Docker lifecycle event hooks
Docker lifecycle event hooks
Ryo Nakamaru
DevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきか
Etsuji Nakai
Couch DB in 15minutes
Couch DB in 15minutes
Yohei Sasaki
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
y_taka_23
DockerでJupyter使おうぜ
DockerでJupyter使おうぜ
Satoshi Yazawa
何者(Dockerって)
何者(Dockerって)
Koji Saiki
新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみた
Kazuto Kusama
コマンドラインツールとしてのDocker
コマンドラインツールとしてのDocker
74th
"Docker is NOT Container." ~ Dockerとコンテナ技術、PaaSの関係を理解する
"Docker is NOT Container." ~ Dockerとコンテナ技術、PaaSの関係を理解する
Etsuji Nakai
Dockerを雑に紹介
Dockerを雑に紹介
f99aq8ove
Docker基礎+docker0.9, 0.10概要
Docker基礎+docker0.9, 0.10概要
Kazuyuki Mori
Docker超入門
Docker超入門
Katsunori Kanda
最近のKubernetesとDocker Machine/Swarmの話
最近のKubernetesとDocker Machine/Swarmの話
Kazuto Kusama
About kitakat
About kitakat
hidenorly
捕鯨!詳解docker
捕鯨!詳解docker
雄哉 吉田
明日からはじめられる Docker + さくらvpsを使った開発環境構築
明日からはじめられる Docker + さくらvpsを使った開発環境構築
MILI-LLC
Contenu connexe
Tendances
KubernetesとOpenShiftの話
KubernetesとOpenShiftの話
Kazuto Kusama
清貧Docker ~個人がDockerを使う理由~
清貧Docker ~個人がDockerを使う理由~
harupong
dockerでImmutable InfrastructureなWordPressを考える
dockerでImmutable InfrastructureなWordPressを考える
GMOインターネット
Dockerfile for Perl development
Dockerfile for Perl development
Yuzo Iwasaki
DockerとKubernetesが作る未来
DockerとKubernetesが作る未来
Kazuto Kusama
Docker1.13で変わったことをわからないなりにまとめてみた
Docker1.13で変わったことをわからないなりにまとめてみた
Kouta Asai
Docker lifecycle event hooks
Docker lifecycle event hooks
Ryo Nakamaru
DevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきか
Etsuji Nakai
Couch DB in 15minutes
Couch DB in 15minutes
Yohei Sasaki
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
y_taka_23
DockerでJupyter使おうぜ
DockerでJupyter使おうぜ
Satoshi Yazawa
何者(Dockerって)
何者(Dockerって)
Koji Saiki
新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみた
Kazuto Kusama
コマンドラインツールとしてのDocker
コマンドラインツールとしてのDocker
74th
"Docker is NOT Container." ~ Dockerとコンテナ技術、PaaSの関係を理解する
"Docker is NOT Container." ~ Dockerとコンテナ技術、PaaSの関係を理解する
Etsuji Nakai
Dockerを雑に紹介
Dockerを雑に紹介
f99aq8ove
Docker基礎+docker0.9, 0.10概要
Docker基礎+docker0.9, 0.10概要
Kazuyuki Mori
Docker超入門
Docker超入門
Katsunori Kanda
最近のKubernetesとDocker Machine/Swarmの話
最近のKubernetesとDocker Machine/Swarmの話
Kazuto Kusama
About kitakat
About kitakat
hidenorly
Tendances
(20)
KubernetesとOpenShiftの話
KubernetesとOpenShiftの話
清貧Docker ~個人がDockerを使う理由~
清貧Docker ~個人がDockerを使う理由~
dockerでImmutable InfrastructureなWordPressを考える
dockerでImmutable InfrastructureなWordPressを考える
Dockerfile for Perl development
Dockerfile for Perl development
DockerとKubernetesが作る未来
DockerとKubernetesが作る未来
Docker1.13で変わったことをわからないなりにまとめてみた
Docker1.13で変わったことをわからないなりにまとめてみた
Docker lifecycle event hooks
Docker lifecycle event hooks
DevOpsにおける組織に固有の事情を どのように整理するべきか
DevOpsにおける組織に固有の事情を どのように整理するべきか
Couch DB in 15minutes
Couch DB in 15minutes
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
机上の Kubernetes - 形式手法で見るコンテナオーケストレーション #NGK2016B
DockerでJupyter使おうぜ
DockerでJupyter使おうぜ
何者(Dockerって)
何者(Dockerって)
新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみた
コマンドラインツールとしてのDocker
コマンドラインツールとしてのDocker
"Docker is NOT Container." ~ Dockerとコンテナ技術、PaaSの関係を理解する
"Docker is NOT Container." ~ Dockerとコンテナ技術、PaaSの関係を理解する
Dockerを雑に紹介
Dockerを雑に紹介
Docker基礎+docker0.9, 0.10概要
Docker基礎+docker0.9, 0.10概要
Docker超入門
Docker超入門
最近のKubernetesとDocker Machine/Swarmの話
最近のKubernetesとDocker Machine/Swarmの話
About kitakat
About kitakat
Similaire à アプリ屋のための Docker入門
捕鯨!詳解docker
捕鯨!詳解docker
雄哉 吉田
明日からはじめられる Docker + さくらvpsを使った開発環境構築
明日からはじめられる Docker + さくらvpsを使った開発環境構築
MILI-LLC
20180925 docker ecs_fargate
20180925 docker ecs_fargate
Hisayuki Mori
Docker入門
Docker入門
Shun Tsunoda
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Masahiro Nagano
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Ryo Nakamaru
そろそろ知っておきたい!!コンテナ技術とDockerのキホン
そろそろ知っておきたい!!コンテナ技術とDockerのキホン
Naoki Nagazumi
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Masahito Zembutsu
パフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したい
zaru sakuraba
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Masahito Zembutsu
いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達
softlayerjp
Introduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 Spring
Go Chiba
DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念
Masahito Zembutsu
Dockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しよう
Takashi Makino
Docker講習会資料
Docker講習会資料
teruyaono1
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
Masahito Zembutsu
Dockerを使ってみよう
Dockerを使ってみよう
Ryo Adachi
Docker Compose 徹底解説
Docker Compose 徹底解説
Masahito Zembutsu
2014.11.01 Dockerことはじめ
2014.11.01 Dockerことはじめ
xyzplus_net
Dockerの仕組みとIIJ社内での利用例
Dockerの仕組みとIIJ社内での利用例
maebashi
Similaire à アプリ屋のための Docker入門
(20)
捕鯨!詳解docker
捕鯨!詳解docker
明日からはじめられる Docker + さくらvpsを使った開発環境構築
明日からはじめられる Docker + さくらvpsを使った開発環境構築
20180925 docker ecs_fargate
20180925 docker ecs_fargate
Docker入門
Docker入門
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
そろそろ知っておきたい!!コンテナ技術とDockerのキホン
そろそろ知っておきたい!!コンテナ技術とDockerのキホン
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
パフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したい
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達
Introduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 Spring
DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念
Dockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しよう
Docker講習会資料
Docker講習会資料
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
Dockerを使ってみよう
Dockerを使ってみよう
Docker Compose 徹底解説
Docker Compose 徹底解説
2014.11.01 Dockerことはじめ
2014.11.01 Dockerことはじめ
Dockerの仕組みとIIJ社内での利用例
Dockerの仕組みとIIJ社内での利用例
Plus de 小川 昌吾
Effective flutter
Effective flutter
小川 昌吾
Flutter first impression
Flutter first impression
小川 昌吾
Flutter management statement
Flutter management statement
小川 昌吾
Laravel vue-project-upload
Laravel vue-project-upload
小川 昌吾
Lara vue
Lara vue
小川 昌吾
Atomic design+vue
Atomic design+vue
小川 昌吾
今年はある意味当たり年だった! という一年振り返り
今年はある意味当たり年だった! という一年振り返り
小川 昌吾
Njug docker-20180623
Njug docker-20180623
小川 昌吾
Njug 20180414
Njug 20180414
小川 昌吾
Java屋からPHPerになって1年くらい経った
Java屋からPHPerになって1年くらい経った
小川 昌吾
チュートリアルではじめるVue.js
チュートリアルではじめるVue.js
小川 昌吾
受託、SES、WEBと経験したので比較してみた
受託、SES、WEBと経験したので比較してみた
小川 昌吾
ITの開発現場における最近の当たり前これからの当たり前(主観)
ITの開発現場における最近の当たり前これからの当たり前(主観)
小川 昌吾
非エンジニアに捧ぐツアーオブ構成管理
非エンジニアに捧ぐツアーオブ構成管理
小川 昌吾
Dynamo db はじめの一歩
Dynamo db はじめの一歩
小川 昌吾
スキトラGit
スキトラGit
小川 昌吾
スキトラ Spring + mybatis
スキトラ Spring + mybatis
小川 昌吾
テストコード入門
テストコード入門
小川 昌吾
IoT検定
IoT検定
小川 昌吾
MySQL入門
MySQL入門
小川 昌吾
Plus de 小川 昌吾
(20)
Effective flutter
Effective flutter
Flutter first impression
Flutter first impression
Flutter management statement
Flutter management statement
Laravel vue-project-upload
Laravel vue-project-upload
Lara vue
Lara vue
Atomic design+vue
Atomic design+vue
今年はある意味当たり年だった! という一年振り返り
今年はある意味当たり年だった! という一年振り返り
Njug docker-20180623
Njug docker-20180623
Njug 20180414
Njug 20180414
Java屋からPHPerになって1年くらい経った
Java屋からPHPerになって1年くらい経った
チュートリアルではじめるVue.js
チュートリアルではじめるVue.js
受託、SES、WEBと経験したので比較してみた
受託、SES、WEBと経験したので比較してみた
ITの開発現場における最近の当たり前これからの当たり前(主観)
ITの開発現場における最近の当たり前これからの当たり前(主観)
非エンジニアに捧ぐツアーオブ構成管理
非エンジニアに捧ぐツアーオブ構成管理
Dynamo db はじめの一歩
Dynamo db はじめの一歩
スキトラGit
スキトラGit
スキトラ Spring + mybatis
スキトラ Spring + mybatis
テストコード入門
テストコード入門
IoT検定
IoT検定
MySQL入門
MySQL入門
アプリ屋のための Docker入門
1.
アプリ屋のための Docker入門 2018/05/15 sh-ogawa
2.
はじめに この会では以下のレベルに達することを目標としてます。 ● Dockerとは何ぞ?が判る ● エコシステムと仲良くなって必要なモノを落として使える2 インフラ・・・ Kubernetesに進むべし(雑) 実際マシンリソースを効率的に使う部分やオートヒーリング機能は インフラ屋として取組み甲斐もあって面白いと思います! (オンプレ上のシステムを纏める・・・ までイケるとランニングコストが落とせるのでアピールになるかと。 通らないといけない関門何個もあるので、完全に無責任に言ってる)
3.
What’s Docker 3 ●
コンテナ型仮想環境 - 既存の仮想マシン(Hyper-VやVMwareなど)はOSイメージが ホストOS上に丸ごと浮くため重いしブートの オーバーヘッドが非常に大きい - DockerはホストOSにプログラムだけが浮く形で ブートのオーバーヘッドが非常に小さい
4.
4 ● コンテナ型仮想環境 What’s
Docker http://www.itmedia.co.jp/news/articles/1406/10/news049.html コンテナ (1ファイル)
5.
What’s Docker 5 ●
Dockerの表面的な中身ってどうなってんの? OSのファイルシステムに含まれている基本ファイル ※/usr/binや/sbinの下など 作ったアプリや、使用するミドルウェアなど
6.
What’s Docker 6 ●
メリットって? - ≒実行可能プログラム - 論理的にどこで動かしても同じ - ディスクリプタも各々持つ - インフラ屋視点だともっとある
7.
Docker’s architecture 7 http://docs.docker.jp/_images/architecture.png
8.
How to run? 8
● DockerはDockerイメージから起動する - Dockerイメージの作り方だけ最低限覚えておく - Dockerfileから作れる ※Dockerfileは自分で作れなくても、とりあえず構わない
9.
Dockerfile 9 # Dockerfile
for MySQL Serve FROM alpine:3.5 RUN apk update && apk add mysql mysql-client && addgroup mysql mysql && mkdir /scripts && rm -rf /var/cache/apk/* VOLUME ["/var/lib/mysql"] COPY ./startup.sh /scripts/startup.sh RUN chmod +x /scripts/startup.sh EXPOSE 3306 ENTRYPOINT ["/scripts/startup.sh"] - 基本ただのyum ※alpineだからapk - 基本コマンド叩くだけ - 独自スクリプトはADDで足す - 作成元イメージは色々あるけど alpineが小さいからおススメ
10.
Dockerfile 10# Dockerfile for
MySQL Serve FROM alpine:3.5 RUN apk update && apk add mysql mysql-client && addgroup mysql mysql && mkdir /scripts && rm -rf /var/cache/apk/* VOLUME ["/var/lib/mysql"] COPY ./startup.sh /scripts/startup.sh RUN chmod +x /scripts/startup.sh EXPOSE 3306 ENTRYPOINT ["/scripts/startup.sh"] 利用可能な命令
11.
Build Dockerfile 11# docker
build -t {repository}:{tag_id} . カレントディレクトリにあるDockerfileを読込んで Dockerイメージを作成する
12.
Build Dockerfile 12
13.
Build Dockerfile 13作ったDockerイメージは以下のコマンドで確認可能 # docker
images
14.
Build Dockerfile 14Dockerイメージは差分管理されている。 1回のビルドで1個のイメージができるわけではなく 、 Stepごとのイメージが作られる。 Stepは、Dockerfileの命令1個に対して1つ。
15.
Boot and Run Docker
Container 15# docker run --name mysql 色々オプション {リポジトリ名}:{タグ}
16.
Stop Docker Container 16#
docker stop コンテナ名 コンテナ名 = build時に--nameで付けた名前 (mysql)
17.
Run Docker Container 17#
docker start コンテナ名
18.
Run Docker Container 18なんでbuildじゃないか? -
buildはコンテナを作るコマンド - stopしてもコンテナ自体は消えない ※stopするときにコンテナを消すオプションはある - buildするときに同じ名前を付けるとエラーになる
19.
Delete Docker Container 19#
docker rm コンテナ名 - コンテナを停止しとかないと消せない
20.
Delete Docker Image 20#
docker rmi {リポジトリ}:{タグ} - イメージ自体を消去する
21.
runコマンドの範囲 Dockerのライフサイクル 21 image build Dockerfile Container create running start stop stop start delete rm rm
rm rmi rmi
22.
Ready to use
docker! 22
23.
Connect with Docker
Hub 23Docker使うだけなら、Docker Hubと仲良くなろう - 世界中のDockerユーザーがimageを上げている - 大概のものはセットアップ済で手に入る - 何か試す場合にインストーラ叩かなくて良いから 圧倒的時間短縮になる
24.
Connect with Docker
Hub 24 とりあえず、ここに欲しいソフトウェアの名前入れて検索する https://hub.docker.com/
25.
Connect with Docker
Hub 25WEB開くのめんどくさい場合はコマンドでも可能 - docker search --no-trunc {username or repository} - スター数でフィルタとかもできる docker search --no-trunc -s 1000 {username or repository}
26.
Connect with Docker
Hub 26 Officialイメージがあればそれを使う。 それ以外はスターとpullされた回数見て適当に選べばOK。
27.
Connect with Docker
Hub 27 このコマンド叩いてローカル環境に持ってくる
28.
Connect with Docker
Hub 28imageが自分の環境に登録されるので、runして使う ※お手軽! runの仕方はDocker Hubのページに大概書いてあるので、 それ通りに叩けばOK
29.
29 Dockerをインストールして 先ずはコマンドを叩いてみよう Dockerメモ: https://scrapbox.io/sh-ogawa/Docker
30.
30 THANKS! Any questions?
Notes de l'éditeur
絵にすると次のページみたいな感じ
Hyper-Vとの比較。 Hyper-Vはその上にOSが丸ごと乗るけど、DockerはDocker Engineの上にOSが来ない。
アプリ屋・・・は、とりあえず表面的な中身判れば良いと思う。 インフラ屋は勿論それではダメ。イメージの差分管理だったり色々覚えてデプロイロールバックとかできるようになる必要がある
雑に言うと、作ったアプリをファイルシステムごとパッケージングして実行することで、論理的にはどこで動かしても同じ実行環境になる。 本番にそのまま持って行ける!みたいなことを言ってるのはこの部分のこと。
クラ-サバ構成 ・dockerコマンド(client)叩くとdaemon(server)が処理する ・ホスト上に保存領域があって、docker hubから取った内容をキャッシュしたりできる
絵にすると次のページみたいな感じ
後で出てくるDockerHubと仲良くなるために、読めた方が良い
後で出てくるDockerHubと仲良くなるために、読めた方が良い
動かすとこんな感じ
Dockerイメージのビルドでこけた場合は、正常に完了したイメージを使って、続きをビルドできるのでリトライ時に全部をやり直す必要がない。 勿論全部をやり直すことも可能。
データはホストOS上に書き出してコンテナ自体は毎回停止時に削除することで、起動するたびにクリーンな状態のコンテナを起動することもできる。 このスライド上だとrunオプションに-d付けてるので毎回コンテナは消える
データはホストOS上に書き出してコンテナ自体は毎回停止時に削除することで、起動するたびにクリーンな状態のコンテナを起動することもできる
他の状態もあるけど、使ったことないから除いてる。基本はコレ。
ここまで頭に入れておけばDockerは簡単に使えます
Télécharger maintenant