Upload
Download free for 30 days
Login
Submit search
Dockerいろいろ使って思うこと
0 likes
1,150 views
Masahiko Hashimoto
相模原Docker & Kubernetes やってみたい人MeetUp で話した資料です。
Technology
Read more
1 of 24
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
More Related Content
PDF
もちょブログ解析入門
sudosan
PDF
cocos2d-xを勉強し始めるまで
Yosuke Fujii
ZIP
夜トコ04:tumblrとは何か?
masaki ishitani
PDF
【LT用前編】Rancherでマルチクラウド をやってみた
Shinya Mori (@mosuke5)
PPT
非情勤司書という生(逝)き方 遠藤元康
arg cafe
PDF
MMySQL Router を監視しちゃうぞ! MySQL Casual Talks #12y sql casual talks #12 (1)
Takuya Hasegawa
PDF
Save The Zoo 20070127 Kouno
武 河野
PDF
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
Oshitari_kochi
もちょブログ解析入門
sudosan
cocos2d-xを勉強し始めるまで
Yosuke Fujii
夜トコ04:tumblrとは何か?
masaki ishitani
【LT用前編】Rancherでマルチクラウド をやってみた
Shinya Mori (@mosuke5)
非情勤司書という生(逝)き方 遠藤元康
arg cafe
MMySQL Router を監視しちゃうぞ! MySQL Casual Talks #12y sql casual talks #12 (1)
Takuya Hasegawa
Save The Zoo 20070127 Kouno
武 河野
よわよわエンジニアがde:code 2020に感化されて新しくコミュニティを立ち上げてみた話
Oshitari_kochi
What's hot
(18)
PDF
Scalaを遊ぶ!会 参加者募集のおしらせ。
Ouka Yuka
PDF
Unity assetevent
poto7
KEY
Sendagaya.rbのご紹介
Naoto Koshikawa
PDF
1日で作るカジュアルゲーム、FlappyXXXXを作ろう
poto7
PDF
「攻城団」へのご協賛のお願い
武 河野
PPTX
魔王の作り方2017
Taiyo Hara
KEY
SNS 「github」で遊ぼう
Tomohiko Himura
PPTX
Word pressもくもく勉強会に出てからの変化について
Toshiki Tanji
PDF
佳作 仕事について 坂口結衣
株式会社ニット
KEY
アジャイルサムライ読書会札幌道場
irasally omuko
PDF
【構想メモ】C97「同人作家が知っておきたい検索エンジンの知識」
fuguti
PDF
コミュニティサイトを爆速で作成し、お手軽に運用する方法
Shunya Ueta
PDF
ロリポップのWordPressをssl化した話
Toshiki Tanji
PDF
1年かけてgemを1つ作りました
Ito Kunihiko
PPT
Memcache Queue
Masaru Hoshino
PDF
カーリルとデザイン
abdfghjkmn
KEY
OSC 2012 HIROSHIMA
Tomohiko Himura
PDF
CUIのツールを1行で Web GUI化する ライブラリを作ってみた
xiidec
Scalaを遊ぶ!会 参加者募集のおしらせ。
Ouka Yuka
Unity assetevent
poto7
Sendagaya.rbのご紹介
Naoto Koshikawa
1日で作るカジュアルゲーム、FlappyXXXXを作ろう
poto7
「攻城団」へのご協賛のお願い
武 河野
魔王の作り方2017
Taiyo Hara
SNS 「github」で遊ぼう
Tomohiko Himura
Word pressもくもく勉強会に出てからの変化について
Toshiki Tanji
佳作 仕事について 坂口結衣
株式会社ニット
アジャイルサムライ読書会札幌道場
irasally omuko
【構想メモ】C97「同人作家が知っておきたい検索エンジンの知識」
fuguti
コミュニティサイトを爆速で作成し、お手軽に運用する方法
Shunya Ueta
ロリポップのWordPressをssl化した話
Toshiki Tanji
1年かけてgemを1つ作りました
Ito Kunihiko
Memcache Queue
Masaru Hoshino
カーリルとデザイン
abdfghjkmn
OSC 2012 HIROSHIMA
Tomohiko Himura
CUIのツールを1行で Web GUI化する ライブラリを作ってみた
xiidec
Ad
More from Masahiko Hashimoto
(20)
PDF
OSSかな漢字変換『Egoistic Lily』の紹介&今後の展望
Masahiko Hashimoto
PDF
DNNを使用した新しいかな漢字変換『EgoisticLily』 その仕組みとは?
Masahiko Hashimoto
PDF
自作かな漢字変換「Genji」をつくったよ
Masahiko Hashimoto
PDF
BrowserMob-Proxyのお話
Masahiko Hashimoto
PDF
DeepLearning入門以前
Masahiko Hashimoto
PDF
かな漢字変換ソフト「Genji」をつくってみた
Masahiko Hashimoto
PDF
あひるに焼かれた話と今後のおーぷん万葉について
Masahiko Hashimoto
PDF
ホットな日本語入力技術のお勉強。〜 OSC 2016 Hamanako 編 〜
Masahiko Hashimoto
PDF
おーぷん万葉プロジェクトとは
Masahiko Hashimoto
PDF
C++アプリをCmakeとEclipseで開発するお話
Masahiko Hashimoto
PDF
おーぷん万葉プロジェクトの進捗とIzumoのその後
Masahiko Hashimoto
PDF
ホットな日本語技術の(ちょっとした)お勉強。
Masahiko Hashimoto
PDF
京都発祥日本語入力「FreeWnn」は(今度こそ)どこまで賢くなれるか?
Masahiko Hashimoto
PDF
TrieとLOUDS??
Masahiko Hashimoto
PDF
C言語なWebSocketの遊び方。
Masahiko Hashimoto
PDF
アヒルヤキを変換してみよう
Masahiko Hashimoto
PDF
Nginxで日本語入力を遊んでみよう!
Masahiko Hashimoto
PDF
続・Cannaをフォークしてみた
Masahiko Hashimoto
PDF
Cannaをフォークしてみた
Masahiko Hashimoto
PDF
秘伝:クラウドに開発環境をえいっ!と構築する方法
Masahiko Hashimoto
OSSかな漢字変換『Egoistic Lily』の紹介&今後の展望
Masahiko Hashimoto
DNNを使用した新しいかな漢字変換『EgoisticLily』 その仕組みとは?
Masahiko Hashimoto
自作かな漢字変換「Genji」をつくったよ
Masahiko Hashimoto
BrowserMob-Proxyのお話
Masahiko Hashimoto
DeepLearning入門以前
Masahiko Hashimoto
かな漢字変換ソフト「Genji」をつくってみた
Masahiko Hashimoto
あひるに焼かれた話と今後のおーぷん万葉について
Masahiko Hashimoto
ホットな日本語入力技術のお勉強。〜 OSC 2016 Hamanako 編 〜
Masahiko Hashimoto
おーぷん万葉プロジェクトとは
Masahiko Hashimoto
C++アプリをCmakeとEclipseで開発するお話
Masahiko Hashimoto
おーぷん万葉プロジェクトの進捗とIzumoのその後
Masahiko Hashimoto
ホットな日本語技術の(ちょっとした)お勉強。
Masahiko Hashimoto
京都発祥日本語入力「FreeWnn」は(今度こそ)どこまで賢くなれるか?
Masahiko Hashimoto
TrieとLOUDS??
Masahiko Hashimoto
C言語なWebSocketの遊び方。
Masahiko Hashimoto
アヒルヤキを変換してみよう
Masahiko Hashimoto
Nginxで日本語入力を遊んでみよう!
Masahiko Hashimoto
続・Cannaをフォークしてみた
Masahiko Hashimoto
Cannaをフォークしてみた
Masahiko Hashimoto
秘伝:クラウドに開発環境をえいっ!と構築する方法
Masahiko Hashimoto
Ad
Recently uploaded
(11)
PPTX
生成AIとモデルベース開発:実はとても相性が良いことを説明します。まあそうだろうなと思われる方はご覧ください。
Akira Tanaka
PDF
ココロ分解帳|感情をやさしく分解し自分と他者を理解するためのモバイルノートアプリ
hatedwunao
PDF
20250826_Devinで切り拓く沖縄ITの未来_AI駆動開発勉強会 沖縄支部 第2回
Masaki Yamakawa
PPTX
Cosense - 整えずして完全勝利!Cosenseが他のwikiツールと違う理由
Ko Jikawa
PDF
R-SCoRe: Revisiting Scene Coordinate Regression for Robust Large-Scale Visual...
Takuya Minagawa
PDF
Working as an OSS Developer at Ruby Association Activity Report 2025
Hiroshi SHIBATA
PDF
[email protected]
Matsushita Laboratory
PDF
Yamaha DT200WR Real Enduro ENGINE CYLINDER TRANSMISSION
Kannabi1
PDF
翔泳社 「C++ ゼロからはじめるプログラミング」対応 C++学習教材(三谷純)
Jun MITANI
PDF
20250823_IoTLT_vol126_kitazaki_v1___.pdf
Ayachika Kitazaki
PDF
Geminiの出力崩壊 本レポートは、Googleの大規模言語モデル「Gemini 2.5」が、特定の画像と短文入力に対して、誤った地名を推定し、最終的に...
池田 直哉
生成AIとモデルベース開発:実はとても相性が良いことを説明します。まあそうだろうなと思われる方はご覧ください。
Akira Tanaka
ココロ分解帳|感情をやさしく分解し自分と他者を理解するためのモバイルノートアプリ
hatedwunao
20250826_Devinで切り拓く沖縄ITの未来_AI駆動開発勉強会 沖縄支部 第2回
Masaki Yamakawa
Cosense - 整えずして完全勝利!Cosenseが他のwikiツールと違う理由
Ko Jikawa
R-SCoRe: Revisiting Scene Coordinate Regression for Robust Large-Scale Visual...
Takuya Minagawa
Working as an OSS Developer at Ruby Association Activity Report 2025
Hiroshi SHIBATA
[email protected]
Matsushita Laboratory
Yamaha DT200WR Real Enduro ENGINE CYLINDER TRANSMISSION
Kannabi1
翔泳社 「C++ ゼロからはじめるプログラミング」対応 C++学習教材(三谷純)
Jun MITANI
20250823_IoTLT_vol126_kitazaki_v1___.pdf
Ayachika Kitazaki
Geminiの出力崩壊 本レポートは、Googleの大規模言語モデル「Gemini 2.5」が、特定の画像と短文入力に対して、誤った地名を推定し、最終的に...
池田 直哉
Dockerいろいろ使って思うこと
1.
Dockerいろいろ使って思うこと はしもとまさ @相模原Docker & Kubernetes
やってみたい人MeetUp 2019/1/27
2.
自己紹介 ✔ はしもとまさ (or 鹿野月美) – Twitter
: @shikanotsukimi ✔ 東海道らぐ 関東案内人 – 横浜オフを企画している人 – 並行してかな漢字変換『Genji』を自作してます ✔ ちびぎーこ保護者会(別名: 日本openSUSEユーザ会) – ぶっちゃけ『橋本』さん多すぎるので、『鹿』です。 – 本日冬コミ本、400円で売ってます(笑) ←修太さんのKubernetesネタや鹿の小説など ✔ 小説書いてます! – 『ユーレイだってAIしたい! 〜OSC事務局の日常〜』: 毎週火曜更新。オープンソースカンファレンス応援小説……のはず? https://kakuyomu.jp/works/1177354054887855183
3.
本日のお題。 いくらなんでもDocker & docker-composeに 振り回されすぎだよ〜!!! ……というお話。 Dockerに触れてみて思ったことと Dockerに躓いたときのお話(クイズ形式)を お話します。 (およそどこかの再放送ですが、全て通して見たことある方はいないはず)
4.
ところで…… Dockerってなによ!?
5.
そもそもDockerってなに? ✔ 疑問1: そもそも仮想マシンと何が違うの? – 環境構築だけなら仮想マシンのほうが楽? – 仮想マシンより高速・軽量って本当? ✔ 疑問2: Docker
を使うメリット&使いどころは? – Docker と一緒によく聞く「DevOps」って? – Docker ってどう使うべき? – 結局 Docker ってなんなの?
6.
Docker と仮想マシン、何が違うのか? ✔ 仮想マシン: ハイパーバイザ上で動作 ✔ Docker:
ホストのOS(カーネル)上で動作 出典:さくらのナレッジ https://knowledge.sakura.ad.jp/13265/ この部分が Dockerにはいない ⇒ホストと 共有しているから
7.
仮想マシンより高速&軽量って本当? 1.高速かどうかは状況次第では??? 2.本当に軽量なの? ⇒ Rasberry Pi で動くのはどっち!? ✔
仮想マシン ⇒ 無理!(準仮想化なら辛うじていけるかな?) ✔ Docker ⇒ 正式サポートされてます!! 同一OS(カーネル)上で動くので、新たにOSを起動する必要なし!
8.
少し話をずらします。。。 「DevOps」っていったいなに? ✔ 読み方は? ✔ そもそも何の略? …ここにいらっしゃる方は説明する必要もない気もしますが?
9.
「DevOps」とは 「でぶおぷす」って読みます。 ✔ 「Development」と「Operations」を略したもの ⇒ 開発チームと運用チームが共同で作業を行うこと ✔ アジャイル開発のひとつ「テスト自動化」を イメージすると、理解しやすいかも。 ⇒ Jenkins, Ansible,
Git, Docker……などを使用します ……で、Docker と DevOps、どう関係あるの?
10.
例) Mastodonサーバーを構築してみよう! ✔ Mastodon とは =
Twitterもどきのオープンソース https://joinmastodon.org/ イチから構築しようと思うと、考えただけでもぞっとしますね ✔ 必要なミドルウェア(※たぶん抜粋) – Nginx (Webサーバー) – Ruby on Rails (Webアプリサーバー) – PostgreSQL (DBサーバー) – Redis (DBサーバーその2) – Postfix (メールサーバー) ・・・・・。 ⇒ 開発&運用スキルの両方が求められそう……
11.
Mastodon を Docker
で構築する場合 ✔ docker-compose でどっかーんと構築! docker-compose = 複数のdockerコンテナを制御 ※ docker-compose.yml というファイルを書くだけで基本OK ✔ 一般に公開されているMastodonインスタンスも Dockerを使用しているケースはかなりあります 例)mikutter (https://social.mikutter.hachune.net/) Mastodonの場合はややコマンドが複雑ですが やはりDockerを使うとかなり楽!
12.
docker-compose の超基本的な使い方 ✔ イメージの作成 $ docker-compose
build ✔ コンテナ起動 $ docker-compose up –d ✔ コンテナ停止 $ docker-compose down 本当に基本的な操作としてはこれだけです
13.
結局のところ、Docker ってなにか? Dockerは 「使い捨て簡易アプリサーバー」 注:あくまで個人的な主観です!!
14.
Docker を使うメリット ✔ ホストと同一OS上で動作するため軽い – 起動&停止がさくさくできる –
逆に「軽い」というメリットを生かさないとダメ! ● Dockerイメージはなるべく小さく作ること! ● ポイントとしては「1アプリ=1イメージ」 ● ホストマシンもそんなに高スペックである必要なし! ⇒1GBを超えるイメージとか作ったらあかん!! ✔ 常に同じ環境を構築できる – テスト環境構築にちょうど良い! – 「DevOps」には欠かせないツール(Kubernetes等)
15.
Docker を使う際の注意点 ✔ Dockerコンテナを停止すると 書かれたものはすべて消えます!! ※だから「使い捨て」 ⇒例: ● DBサーバーのストレージ ● ログファイル ✔ 対処法: ホストPC上にマウントポイントを作成し Dockerコンテナが吐き出すログなどはそこへ書くように設定する ※ようは、消したくないものはホストへ書きましょう!
16.
さて、ここからはちょっとマニアックなDocker実践編! これから docker-composeに関する問題を 3つを出します! いくつ答えられるかな? docker-compose = 複数のDockerコンテナを一括管理するみたいなアレ
17.
問1: 【初級】ネットワークが繋がらない!? ✔ 下記のdocker-compose.ymlの場合、Dockerコンテナ同士の通信が出来ません。 どうすればいいでしょうか?「一番簡単な方法」はなんでしょう? app1: image: app1 port: 8080:80 app2: image:
app2 port: 8081:80 app3: image: app3 「app1」と「app3」が 会話をするには どうすれば???
18.
問1 答え ✔ docker-composeのネットワーク管理は「Version2」から! (らしい?) version: '2' services: app1: image: app1 port:
8080:80 container_name: app1 app2: image: app2 port: 8081:80 container_name: app2 app3: image: app3 container_name: app3 これで、app1から 「ping app3」(名前解決) が通るようになる 他にも方法あるだろうけど これが一応答えということで。
19.
問2:【中級】外からアクセスできない!?? ✔ なぜかこれだとタブレットからアクセスできないんですけどなぜ!? version: '2' services: app1: image: app1 port:
30000:30000 container_name: app1 app2: image: app2 port: 30001:30001 container_name: app2 app3: image: app3 container_name: app3 タブレットから 30000ポートで開いているはずのアプリと UDP通信したいだけなのに!!! 注:ホスト側で30000ポートを 別アプリが使用していたというオチではありません!!
20.
問2:ヒント ✔ なぜかこれだとタブレットからアクセスできないんですけどなぜ!? version: '2' services: app1: image: app1 port:
30000:30000 container_name: app1 app2: image: app2 port: 30001:30001 container_name: app2 app3: image: app3 container_name: app3 タブレットから 30000ポートで開いているはずのアプリと UDP通信したいだけなのに!!! これ、言われりゃそりゃ気づくんだけど…orz
21.
問2:答え ✔ UDP通信する場合はこんな感じで…orz (そもそもiptable由来らしい) version: '2' services: app1: image:
app1 port: 30000:30000/udp container_name: app1 app2: image: app2 port: 30001:30001/udp container_name: app2 app3: image: app3 container_name: app3 おいら、気づいて解決するまでに まる1日くらいかかりましたorz
22.
問3: 【上級】ALSA専有問題!?? ✔ 下記の図の通りdockerでコンテナを立てたつもりが どういうわけだか「コンテナ3」がリソースビジーで立ち上がりません。 どうすればよいでしょうか? Dockerエンジン コンテナ1 コンテナ2 コンテナ3 /dev/snd/pcmC1D0c /dev/snd/pcmC1D0p
再生 録音 前提条件: Dockerを使用しない場合は 「アプリ1」 「アプリ2」 「アプリ3」 ちゃんと同時動作します! アプリ1 アプリ2 アプリ3
23.
問3: 答え(たぶん) ✔ どうやらDockerコンテナひとつがデバイスファイルをそのものを専有する模様 ……ということは、こんな感じで回避できた!! Dockerエンジン コンテナ1 コンテナ2 /dev/snd/pcmC1D0c /dev/snd/pcmC1D0p 再生 録音 いろいろ試してこれしかうまくいってない… コンテナ内のアプリがPulseAudioを使用しても 同じことが起きてるのでまぁこう考えるのが妥当かなと アプリ1
アプリ2 アプリ3 コンテナ3 は削除
24.
ご清聴ありがとうございました!
Download