狠狠撸

狠狠撸Share a Scribd company logo
自作アプリを
デプロイしてみた
with Docker
2019 / 12 / 13 ふみたろう
目次
? 前回スライドのお話 - p3
? Docker 説明からhello worldまで - p4
? デプロイについて- p7
? デプロイ手順 - p9
2
前回
? ツイートアプリを自作した
? それで得た知見をスライドにした
スライド - Reactを用いたツイートアプリの作成で得た知見
3
Dockerとは
? コンテナ型の仮想環境
? ゲストOSの起動を必要としない
? 起動が早い
? ユーザ空間を分割するため、
プロセスやシステムの衝突が起きない
4
Dockerの導入
? $ brew update
? brewの更新
? $ brew install docker
? dockerのインストール
? $ docker -v
? dockerのバージョン確認(インストール確認)
5
Dockerで「hello world」
? $ docker run hello-world
? 「hello-world」イメージでコンテナを作成?実行
6
デプロイについて
? 今回はhttpdなどのwebサーバにデプロイする
? そもそもhttpdって何者?
→ 次のスライドで概要をまとめました
7
httpd とは
? HyperText Transfer Protocol Daemon
? リクエストに応じて動作する常駐プログラム
? http通信で受け取ったリクエストに対して
処理を行ったり、データを返したりする
8
自作アプリのデプロイ手順
1. 自作アプリの成果物を出力する
2. Dockerfileを作成する
3. 自作アプリのコンテナイメージを作成する
4. 作成したイメージでコンテナを起動する
9
自作アプリの成果物を出力する
? 今回の自作アプリ (ツイートアプリ) は
Reactを用いて開発し、
パッケージ管理には
yarn を使用しているため、
$ yarn build で
成果物を出力できる
10
DockerFileを作成する(前に)
? 現在のディレクトリ構成
11
TweetApp
┣tweet-app
┃┣build
┃┗src
┗Dockerfile
前スライドで出力した
成果物フォルダ
これから作成する
DockerFile
←
←
? Dockerfileという名前でファイルを作成
? 中身にはDockerの構成内容を記述
? スクリプトのようなもの
Dockerfileを作成する
12
Dockerfileの中身
? FROM httpd:2.4
? version 2.4 のhttpdイメージを基にする
? COPY ./tweet-app/build/ /usr/local/apache2/htdocs/
? デプロイする成果物ディレクトリ(ホスト)
? 相対パスで記述(絶対パスは×)
? コンテナ内の実行ディレクトリ(ゲスト)
? 中間にスペースで区切る
13
自作アプリの
コンテナイメージを作成する
? 前述で作成したDockerfileを用いて
コンテナイメージを作成する
? Dockerfileがあるディレクトリで
以下コマンドを実行
? $ docker builde -t tweet-app-image .
? -t オプションでイメージの名前を登録
14
作成したイメージで
コンテナを起動する
? 作成したイメージを使用し、
コンテナを起動することで、
自作アプリのデプロイが完了する。
? $ docker run -dit
—name my-tweet-app
-p 8080:80
tweet-app-image
15
? オプションについては後述
? http://localhost:8080/ に
デプロイされる
docker run オプション (-dit)
? -dit : -d、-i、-tの合わせ技
? -d : コンテナをバックグラウンドで実行
? -i : コンテナのstdin (標準入力) にアタッチ
? コンテナに入力可能にする
? -t : tty (疑似ターミナル) の割り当て
? ターミナルから操作可能にする
? 今回に限っては「-i」「-t」は不要
16
docker run オプション (その他)
? —name : コンテナ名の登録
? 「-」は2個
? -p : ポートの指定
? 公開ポートとポートプロトコルの指定
? 最後に、使用するコンテナイメージを指定
17
http://localhost:8080/
に接続
デプロイ手順再掲
1. 自作アプリの成果物を出力する
2. Dockerfileを作成する
3. 自作アプリのコンテナイメージを作成する
4. 作成したイメージでコンテナを起動する
19
まとめ
? dockerについて
? dockerを用いた
自作アプリのデプロイについて
20
参考資料
? はじめてのdocker
? httpdとは - IT用語辞典 e-Words
? Apacheとは?| カゴヤのサーバー研究室
? run — Docker-docs-ja ドキュメント
21

More Related Content

What's hot (20)

PDF
Docker Swarm入門
Masahito Zembutsu
?
PDF
今だからこそ知りたい Docker Compose/Swarm 入門
Masahito Zembutsu
?
PDF
笔贬笔の戻り値型宣言で蝉别濒蹿を使ってみよう
DQNEO
?
PPTX
イベント?ソーシングを知る
Shuhei Fujita
?
PPTX
初心者向け惭辞苍驳辞顿叠のキホン!
Tetsutaro Watanabe
?
PDF
Docker Compose 徹底解説
Masahito Zembutsu
?
PDF
惭测厂蚕尝负荷分散の方法
佐久本正太
?
PDF
Form認証で学ぶSpring Security入門
Ryosuke Uchitate
?
PPTX
惭痴痴惭入门
Kazutoshi Urabe
?
PDF
分散環境におけるDocker とオーケストレーション
Masahito Zembutsu
?
PPTX
Rails上でのpub/sub イベントハンドラの扱い
ota42y
?
PDF
今日からできる!簡単 .NET 高速化 Tips
Takaaki Suzuki
?
PPTX
搁别诲颈蝉の特徴と活用方法について
Yuji Otani
?
PDF
贰肠濒颈辫蝉别デバッガを活用するための31の迟颈辫蝉
Hiroki Kondo
?
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
?
PDF
Rest ful api設計入門
Monstar Lab Inc.
?
PDF
Unity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニー
Yoshifumi Kawai
?
PDF
こわくない Git
Kota Saito
?
PDF
コンホ?ーネント指向と余白の设计
Manabu Yasuda
?
PPTX
php-src の歩き方
do_aki
?
Docker Swarm入門
Masahito Zembutsu
?
今だからこそ知りたい Docker Compose/Swarm 入門
Masahito Zembutsu
?
笔贬笔の戻り値型宣言で蝉别濒蹿を使ってみよう
DQNEO
?
イベント?ソーシングを知る
Shuhei Fujita
?
初心者向け惭辞苍驳辞顿叠のキホン!
Tetsutaro Watanabe
?
Docker Compose 徹底解説
Masahito Zembutsu
?
惭测厂蚕尝负荷分散の方法
佐久本正太
?
Form認証で学ぶSpring Security入門
Ryosuke Uchitate
?
惭痴痴惭入门
Kazutoshi Urabe
?
分散環境におけるDocker とオーケストレーション
Masahito Zembutsu
?
Rails上でのpub/sub イベントハンドラの扱い
ota42y
?
今日からできる!簡単 .NET 高速化 Tips
Takaaki Suzuki
?
搁别诲颈蝉の特徴と活用方法について
Yuji Otani
?
贰肠濒颈辫蝉别デバッガを活用するための31の迟颈辫蝉
Hiroki Kondo
?
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
?
Rest ful api設計入門
Monstar Lab Inc.
?
Unity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニー
Yoshifumi Kawai
?
こわくない Git
Kota Saito
?
コンホ?ーネント指向と余白の设计
Manabu Yasuda
?
php-src の歩き方
do_aki
?

Similar to 自作アプリをデプロイしてみた with Docker (20)

PDF
顿辞肠办别谤て?テ?フ?ロイ
oshiro_seiya
?
PDF
奥别产アプリケーション开発者のための顿辞肠办别谤ハンズオン20210519
虎の穴 開発室
?
PDF
奥别产アプリケーション开発者のための顿辞肠办别谤ハンズオン
虎の穴 開発室
?
PPTX
诲辞肠办别谤ハンズオン
Shugo Ushio
?
PPTX
ラズパイ2で動く Docker PaaS
npsg
?
PDF
小さく始める Docker container の deploy
Yoshinori Teraoka
?
PDF
顿辞肠办别谤を使ったローカルでの开発から本番环境へのデプロイまで
Ryo Nakamaru
?
PDF
Docker handson
koda3
?
PPTX
コンテナの基本 ~Docker実践~
Ryosuke Uchiyama
?
PDF
Docker事始めと最新動向 2015年6月
Emma Haruka Iwao
?
PPTX
顿辞肠办别谤超入门
VirtualTech Japan Inc.
?
PPTX
ラズパイ2で動く Docker PaaSを作ってみたよ
npsg
?
PDF
Docker基礎+docker0.9, 0.10概要
Kazuyuki Mori
?
PDF
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Masahiro Nagano
?
PDF
Docker ComposeでMastodonが必要なものを梱包する話
Masahito Zembutsu
?
PDF
础苍驳耻濒补谤闯厂を通して顿辞肠办别谤と触れ合った
pastelInc
?
PPTX
0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)
NTT DATA Technology & Innovation
?
PPTX
Newcomer2020 Docker研修
Suguru Yazawa
?
PDF
顿辞肠办别谤ハンス?オン
Kazuyuki Mori
?
PDF
Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編
Masahito Zembutsu
?
顿辞肠办别谤て?テ?フ?ロイ
oshiro_seiya
?
奥别产アプリケーション开発者のための顿辞肠办别谤ハンズオン20210519
虎の穴 開発室
?
奥别产アプリケーション开発者のための顿辞肠办别谤ハンズオン
虎の穴 開発室
?
诲辞肠办别谤ハンズオン
Shugo Ushio
?
ラズパイ2で動く Docker PaaS
npsg
?
小さく始める Docker container の deploy
Yoshinori Teraoka
?
顿辞肠办别谤を使ったローカルでの开発から本番环境へのデプロイまで
Ryo Nakamaru
?
Docker handson
koda3
?
コンテナの基本 ~Docker実践~
Ryosuke Uchiyama
?
Docker事始めと最新動向 2015年6月
Emma Haruka Iwao
?
顿辞肠办别谤超入门
VirtualTech Japan Inc.
?
ラズパイ2で動く Docker PaaSを作ってみたよ
npsg
?
Docker基礎+docker0.9, 0.10概要
Kazuyuki Mori
?
Dockerで遊んでみよっかー YAPC::Asia Tokyo 2014
Masahiro Nagano
?
Docker ComposeでMastodonが必要なものを梱包する話
Masahito Zembutsu
?
础苍驳耻濒补谤闯厂を通して顿辞肠办别谤と触れ合った
pastelInc
?
0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)
NTT DATA Technology & Innovation
?
Newcomer2020 Docker研修
Suguru Yazawa
?
顿辞肠办别谤ハンス?オン
Kazuyuki Mori
?
Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編
Masahito Zembutsu
?
Ad

More from iPride Co., Ltd. (20)

PPTX
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
PPTX
色について.pptx .
iPride Co., Ltd.
?
PPTX
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
PPTX
やってみた!OpenAI Function Calling 入門 .
iPride Co., Ltd.
?
PPTX
ECAモシ?ュールの基礎調査.pptx 2025/05/30 の勉強会で発表されたものです。
iPride Co., Ltd.
?
PDF
Drupal10 Theme Starterkit入門.pdf .
iPride Co., Ltd.
?
PDF
サイクリンク?はいいそ? .
iPride Co., Ltd.
?
PDF
顿顿贰痴て?らくらく顿谤耻辫补濒ローカル环境构筑。2025/2/28の勉强会で発表されたものです。
iPride Co., Ltd.
?
PDF
DeepSeekの紹介( 2025/2/21の勉強会で発表されたものになります)
iPride Co., Ltd.
?
PPTX
Azure で RDB を作成してみた (2024/12/20 の勉強会で発表)
iPride Co., Ltd.
?
PPTX
vi / vim の基本コマンドについて(2024/12/20 の勉強会で発表)
iPride Co., Ltd.
?
PPTX
奥别产础耻迟丑苍についてのざっくり説明摆2024/10/25闭の勉强会で発表されたものです。
iPride Co., Ltd.
?
PPTX
AWSの勉強、AWS S3編。2024/10/11の勉強会で発表されたものです。
iPride Co., Ltd.
?
PPTX
础奥厂の勉强リーシ?ョン编  2024/09/27の勉强会で発表されたものです。
iPride Co., Ltd.
?
PPTX
AWSサポートに学ぶ、エラーなどの報告をする際のコツ(2024/09/13 勉強会)
iPride Co., Ltd.
?
PPTX
最近のDrupalハ?ーシ?ョンアッフ?て?起きた問題まとめ(2024/09/13 勉強会)
iPride Co., Ltd.
?
PPTX
AWSとIPv6 2時間目  2024/09/06の勉強会で発表されたものです。
iPride Co., Ltd.
?
PPTX
础奥厂と滨笔惫6       2024/08/30の勉强会で発表されたものです。
iPride Co., Ltd.
?
PPTX
MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。
iPride Co., Ltd.
?
PPTX
Drupal Feedsモシ?ュールについての豆知識 2024/06/21の勉強会で発表されたものです。
iPride Co., Ltd.
?
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
色について.pptx .
iPride Co., Ltd.
?
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
やってみた!OpenAI Function Calling 入門 .
iPride Co., Ltd.
?
ECAモシ?ュールの基礎調査.pptx 2025/05/30 の勉強会で発表されたものです。
iPride Co., Ltd.
?
Drupal10 Theme Starterkit入門.pdf .
iPride Co., Ltd.
?
サイクリンク?はいいそ? .
iPride Co., Ltd.
?
顿顿贰痴て?らくらく顿谤耻辫补濒ローカル环境构筑。2025/2/28の勉强会で発表されたものです。
iPride Co., Ltd.
?
DeepSeekの紹介( 2025/2/21の勉強会で発表されたものになります)
iPride Co., Ltd.
?
Azure で RDB を作成してみた (2024/12/20 の勉強会で発表)
iPride Co., Ltd.
?
vi / vim の基本コマンドについて(2024/12/20 の勉強会で発表)
iPride Co., Ltd.
?
奥别产础耻迟丑苍についてのざっくり説明摆2024/10/25闭の勉强会で発表されたものです。
iPride Co., Ltd.
?
AWSの勉強、AWS S3編。2024/10/11の勉強会で発表されたものです。
iPride Co., Ltd.
?
础奥厂の勉强リーシ?ョン编  2024/09/27の勉强会で発表されたものです。
iPride Co., Ltd.
?
AWSサポートに学ぶ、エラーなどの報告をする際のコツ(2024/09/13 勉強会)
iPride Co., Ltd.
?
最近のDrupalハ?ーシ?ョンアッフ?て?起きた問題まとめ(2024/09/13 勉強会)
iPride Co., Ltd.
?
AWSとIPv6 2時間目  2024/09/06の勉強会で発表されたものです。
iPride Co., Ltd.
?
础奥厂と滨笔惫6       2024/08/30の勉强会で発表されたものです。
iPride Co., Ltd.
?
MySQLの文字コードと照合順序について 2024/07/05の勉強会で発表されたものです。
iPride Co., Ltd.
?
Drupal Feedsモシ?ュールについての豆知識 2024/06/21の勉強会で発表されたものです。
iPride Co., Ltd.
?
Ad

Recently uploaded (6)

PDF
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
?
PDF
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
?
PDF
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
PDF
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
?
PDF
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
?
PDF
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
?
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
?
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
?
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
?
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
?
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
?

自作アプリをデプロイしてみた with Docker