Suche senden
Hochladen
Dive into the Cloud with our buddy, lovely PHP!
•
2 gefällt mir
•
10,065 views
Sotaro Omura
Folgen
PHP と一緒にクラウドの世界へ飛び込もう。 JAWS FESTA Kansai 2013 でのスライドです。
Weniger lesen
Mehr lesen
Technologie
Business
Melden
Teilen
Melden
Teilen
1 von 130
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Debianを用いたCortex-M3マイコン開発事例のご紹介
Debianを用いたCortex-M3マイコン開発事例のご紹介
Kiwamu Okabe
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS
Masami Yabushita
FxOSコードリーディングミートアップ#16 Vibration APIも読んでみた
FxOSコードリーディングミートアップ#16 Vibration APIも読んでみた
Masami Yabushita
minneで学ぶクラウド脳
minneで学ぶクラウド脳
Uchio Kondo
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
Takanori Suzuki
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Masahito Zembutsu
Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開
Shogo Kawahara
"Continuous Publication" with Python: Another Approach
"Continuous Publication" with Python: Another Approach
Daisuke Miyakawa
Empfohlen
Debianを用いたCortex-M3マイコン開発事例のご紹介
Debianを用いたCortex-M3マイコン開発事例のご紹介
Kiwamu Okabe
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS
中国Firefox OS勉強会 3rd 組み込み屋さんから見たFirefox OS
Masami Yabushita
FxOSコードリーディングミートアップ#16 Vibration APIも読んでみた
FxOSコードリーディングミートアップ#16 Vibration APIも読んでみた
Masami Yabushita
minneで学ぶクラウド脳
minneで学ぶクラウド脳
Uchio Kondo
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
「Python言語」はじめの一歩 / First step of Python / 2016 Jan 12
Takanori Suzuki
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Serfが面白いと俺の中で話題にwwwwww 【改訂版】
Masahito Zembutsu
Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開
Shogo Kawahara
"Continuous Publication" with Python: Another Approach
"Continuous Publication" with Python: Another Approach
Daisuke Miyakawa
Crm 12 2010
Crm 12 2010
Kiparis_89
Calend mendoza 2011meses
Calend mendoza 2011meses
Mendoza Vending (Máquinas de Venta, S,L.)
PHPで文字コードとエラーメッセージをコントロールする
PHPで文字コードとエラーメッセージをコントロールする
Sotaro Omura
Pengantar pesawat sinar-X
Pengantar pesawat sinar-X
sunarya afaf
Crm 12 2010
Crm 12 2010
Kiparis_89
Pesawat sinar x fluoroskopi
Pesawat sinar x fluoroskopi
sunarya afaf
10分で作るScala開発環境 using vim
10分で作るScala開発環境 using vim
George Okada
ocamloptの全体像
ocamloptの全体像
Kiwamu Okabe
mbedではじめる組み込みHaskellプログラミング
mbedではじめる組み込みHaskellプログラミング
Kiwamu Okabe
明日から使えるコーディングツール
明日から使えるコーディングツール
Tomokazu Kiyohara
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
Masashi Shinbara
Composer 再入門
Composer 再入門
Masashi Shinbara
「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of Python
Takanori Suzuki
Firefox Add-on SDK 入門
Firefox Add-on SDK 入門
Shoot Morii
Haikara
Haikara
jewel12
Chiba pm#1 - ArangoDB for Perl
Chiba pm#1 - ArangoDB for Perl
Hideaki Ohno
ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!
Yohei Fushii
Translate CakePHP Documents
Translate CakePHP Documents
Norio Suzuki
PHP から Groonga を使うにはこんなコードになるよ!
PHP から Groonga を使うにはこんなコードになるよ!
do_aki
Google container builderと友だちになるまで
Google container builderと友だちになるまで
lestrrat
使えるDjango1.4
使えるDjango1.4
hirokiky
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
Kazuhiro Hara
Weitere ähnliche Inhalte
Andere mochten auch
Crm 12 2010
Crm 12 2010
Kiparis_89
Calend mendoza 2011meses
Calend mendoza 2011meses
Mendoza Vending (Máquinas de Venta, S,L.)
PHPで文字コードとエラーメッセージをコントロールする
PHPで文字コードとエラーメッセージをコントロールする
Sotaro Omura
Pengantar pesawat sinar-X
Pengantar pesawat sinar-X
sunarya afaf
Crm 12 2010
Crm 12 2010
Kiparis_89
Pesawat sinar x fluoroskopi
Pesawat sinar x fluoroskopi
sunarya afaf
Andere mochten auch
(6)
Crm 12 2010
Crm 12 2010
Calend mendoza 2011meses
Calend mendoza 2011meses
PHPで文字コードとエラーメッセージをコントロールする
PHPで文字コードとエラーメッセージをコントロールする
Pengantar pesawat sinar-X
Pengantar pesawat sinar-X
Crm 12 2010
Crm 12 2010
Pesawat sinar x fluoroskopi
Pesawat sinar x fluoroskopi
Ähnlich wie Dive into the Cloud with our buddy, lovely PHP!
10分で作るScala開発環境 using vim
10分で作るScala開発環境 using vim
George Okada
ocamloptの全体像
ocamloptの全体像
Kiwamu Okabe
mbedではじめる組み込みHaskellプログラミング
mbedではじめる組み込みHaskellプログラミング
Kiwamu Okabe
明日から使えるコーディングツール
明日から使えるコーディングツール
Tomokazu Kiyohara
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
Masashi Shinbara
Composer 再入門
Composer 再入門
Masashi Shinbara
「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of Python
Takanori Suzuki
Firefox Add-on SDK 入門
Firefox Add-on SDK 入門
Shoot Morii
Haikara
Haikara
jewel12
Chiba pm#1 - ArangoDB for Perl
Chiba pm#1 - ArangoDB for Perl
Hideaki Ohno
ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!
Yohei Fushii
Translate CakePHP Documents
Translate CakePHP Documents
Norio Suzuki
PHP から Groonga を使うにはこんなコードになるよ!
PHP から Groonga を使うにはこんなコードになるよ!
do_aki
Google container builderと友だちになるまで
Google container builderと友だちになるまで
lestrrat
使えるDjango1.4
使えるDjango1.4
hirokiky
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
Kazuhiro Hara
Groovy Grails eXchage 2014 報告
Groovy Grails eXchage 2014 報告
Tsuyoshi Yamamoto
20150317 firefox os勉強会
20150317 firefox os勉強会
Naoki Sekiguchi
Go言語入門者が Webアプリケーション を作ってみた話 #devfest #gdgkyoto
Go言語入門者が Webアプリケーション を作ってみた話 #devfest #gdgkyoto
Shoot Morii
Firefox with HTML+CSS
Firefox with HTML+CSS
dynamis
Ähnlich wie Dive into the Cloud with our buddy, lovely PHP!
(20)
10分で作るScala開発環境 using vim
10分で作るScala開発環境 using vim
ocamloptの全体像
ocamloptの全体像
mbedではじめる組み込みHaskellプログラミング
mbedではじめる組み込みHaskellプログラミング
明日から使えるコーディングツール
明日から使えるコーディングツール
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
Composer 再入門
Composer 再入門
「Python言語」はじめの一歩 / First step of Python
「Python言語」はじめの一歩 / First step of Python
Firefox Add-on SDK 入門
Firefox Add-on SDK 入門
Haikara
Haikara
Chiba pm#1 - ArangoDB for Perl
Chiba pm#1 - ArangoDB for Perl
ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!
Translate CakePHP Documents
Translate CakePHP Documents
PHP から Groonga を使うにはこんなコードになるよ!
PHP から Groonga を使うにはこんなコードになるよ!
Google container builderと友だちになるまで
Google container builderと友だちになるまで
使えるDjango1.4
使えるDjango1.4
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
PlayFramework 2.0 Javaと WebSocketでつくる リアルタイムMVC Webアプリケーション
Groovy Grails eXchage 2014 報告
Groovy Grails eXchage 2014 報告
20150317 firefox os勉強会
20150317 firefox os勉強会
Go言語入門者が Webアプリケーション を作ってみた話 #devfest #gdgkyoto
Go言語入門者が Webアプリケーション を作ってみた話 #devfest #gdgkyoto
Firefox with HTML+CSS
Firefox with HTML+CSS
Mehr von Sotaro Omura
RubyMotion もくもく会 in Osaka 活動報告
RubyMotion もくもく会 in Osaka 活動報告
Sotaro Omura
omoon.org の裏側 〜FuelPHP の task 活用例〜
omoon.org の裏側 〜FuelPHP の task 活用例〜
Sotaro Omura
プログラマ進化論
プログラマ進化論
Sotaro Omura
CakePHP vs FuelPHP
CakePHP vs FuelPHP
Sotaro Omura
FuelPHP + Pagoda Box
FuelPHP + Pagoda Box
Sotaro Omura
FuelPHPをさわってみて
FuelPHPをさわってみて
Sotaro Omura
seleniumをPHPで使う
seleniumをPHPで使う
Sotaro Omura
Mehr von Sotaro Omura
(7)
RubyMotion もくもく会 in Osaka 活動報告
RubyMotion もくもく会 in Osaka 活動報告
omoon.org の裏側 〜FuelPHP の task 活用例〜
omoon.org の裏側 〜FuelPHP の task 活用例〜
プログラマ進化論
プログラマ進化論
CakePHP vs FuelPHP
CakePHP vs FuelPHP
FuelPHP + Pagoda Box
FuelPHP + Pagoda Box
FuelPHPをさわってみて
FuelPHPをさわってみて
seleniumをPHPで使う
seleniumをPHPで使う
Kürzlich hochgeladen
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
Kürzlich hochgeladen
(9)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
Dive into the Cloud with our buddy, lovely PHP!
1.
Dive into the
Cloud with our buddy, lovely PHP! 関西PHP勉強会 #9 in JAWS FESTA Kansai 2013 September 26th, 2013 Sotaro OMURA @omoon
2.
#jawsfesta About Me
3.
#jawsfesta About Me •Sotaro OMURA
4.
#jawsfesta About Me •Sotaro OMURA •株式会社タップ
5.
#jawsfesta About Me •Sotaro OMURA •株式会社タップ •PHP歴は12年ほど(最近はFuelPHPとか)
6.
#jawsfesta About Me •Sotaro OMURA •株式会社タップ •PHP歴は12年ほど(最近はFuelPHPとか) •love
noodles
7.
#jawsfesta About Me •Sotaro OMURA •株式会社タップ •PHP歴は12年ほど(最近はFuelPHPとか) •love
noodles •omoon.org
8.
#jawsfesta About Me •Sotaro OMURA •株式会社タップ •PHP歴は12年ほど(最近はFuelPHPとか) •love
noodles •omoon.org •@omoon
9.
#jawsfesta About Me •Sotaro OMURA •株式会社タップ •PHP歴は12年ほど(最近はFuelPHPとか) •love
noodles •omoon.org •@omoon
10.
#jawsfesta 京セラドームと聞いて
11.
#jawsfesta
12.
#jawsfesta 安心しました
13.
#jawsfesta 今日話すこと
14.
#jawsfesta 今日話すこと •クラウドにまつわる言葉の整理
15.
#jawsfesta 今日話すこと •クラウドにまつわる言葉の整理 •代表的クラウド紹介
16.
#jawsfesta 今日話すこと •クラウドにまつわる言葉の整理 •代表的クラウド紹介 •実際にクラウドでPHPアプリケーションを公開する場合の具体的手順
17.
#jawsfesta ところで
18.
#jawsfesta About Me
19.
#jawsfesta About Me
20.
#jawsfesta
21.
#jawsfesta
22.
#jawsfesta About Me
23.
#jawsfesta About Me
24.
#jawsfesta
25.
#jawsfesta クラウドとは
26.
#jawsfesta クラウド3つの分類
27.
#jawsfesta クラウド3つの分類 •IaaS (Infrastructure as
a Service)
28.
#jawsfesta クラウド3つの分類 •IaaS (Infrastructure as
a Service) •PaaS (Platform as a Service)
29.
#jawsfesta クラウド3つの分類 •IaaS (Infrastructure as
a Service) •PaaS (Platform as a Service) •SaaS (Software as a Service)
30.
#jawsfesta IaaS
31.
#jawsfesta IaaS(あいあーす)
32.
#jawsfesta IaaS(いあーす)
33.
#jawsfesta IaaS
34.
#jawsfesta IaaS •Amazon Web Services(http://aws.amazon.com/jp/)
35.
#jawsfesta IaaS •Amazon Web Services(http://aws.amazon.com/jp/) •さくらのクラウド(http://cloud.sakura.ad.jp/)
36.
#jawsfesta IaaS •Amazon Web Services(http://aws.amazon.com/jp/) •さくらのクラウド(http://cloud.sakura.ad.jp/) •NIFTY
Cloud(http://cloud.nifty.com/)
37.
#jawsfesta IaaS •Amazon Web Services(http://aws.amazon.com/jp/) •さくらのクラウド(http://cloud.sakura.ad.jp/) •NIFTY
Cloud(http://cloud.nifty.com/) •Windows Azure(http://www.windowsazure.com/ja-jp/)
38.
#jawsfesta PaaS
39.
#jawsfesta PaaS(ぱあす)
40.
#jawsfesta PaaS
41.
#jawsfesta PaaS • AppFog(https://www.appfog.com)
42.
#jawsfesta PaaS • AppFog(https://www.appfog.com) • AWS
Elastic Beanstalk(http://aws.amazon.com/jp/elasticbeanstalk/)
43.
#jawsfesta PaaS • AppFog(https://www.appfog.com) • AWS
Elastic Beanstalk(http://aws.amazon.com/jp/elasticbeanstalk/) • cloudControl(https://www.cloudcontrol.com)
44.
#jawsfesta PaaS • AppFog(https://www.appfog.com) • AWS
Elastic Beanstalk(http://aws.amazon.com/jp/elasticbeanstalk/) • cloudControl(https://www.cloudcontrol.com) • DotCloud(https://www.dotcloud.com)
45.
#jawsfesta PaaS • AppFog(https://www.appfog.com) • AWS
Elastic Beanstalk(http://aws.amazon.com/jp/elasticbeanstalk/) • cloudControl(https://www.cloudcontrol.com) • DotCloud(https://www.dotcloud.com) • Engine Yard(http://www.engineyard.co.jp)
46.
#jawsfesta PaaS • AppFog(https://www.appfog.com) • AWS
Elastic Beanstalk(http://aws.amazon.com/jp/elasticbeanstalk/) • cloudControl(https://www.cloudcontrol.com) • DotCloud(https://www.dotcloud.com) • Engine Yard(http://www.engineyard.co.jp) • Google App Engine(https://developers.google.com/appengine/)
47.
#jawsfesta PaaS • AppFog(https://www.appfog.com) • AWS
Elastic Beanstalk(http://aws.amazon.com/jp/elasticbeanstalk/) • cloudControl(https://www.cloudcontrol.com) • DotCloud(https://www.dotcloud.com) • Engine Yard(http://www.engineyard.co.jp) • Google App Engine(https://developers.google.com/appengine/) • Pagoda Box(http://pagodabox.com)
48.
#jawsfesta SaaS(さあす)
49.
#jawsfesta SaaS
50.
#jawsfesta SaaS •Gmail
51.
#jawsfesta SaaS •Gmail •GitHub / Bitbucket
52.
#jawsfesta SaaS •Gmail •GitHub / Bitbucket •サイボウズLive
(https://live.cybozu.co.jp)
53.
#jawsfesta SaaS •Gmail •GitHub / Bitbucket •サイボウズLive
(https://live.cybozu.co.jp) •SendGrid (http://sendgrid.com)
54.
#jawsfesta SaaS •Gmail •GitHub / Bitbucket •サイボウズLive
(https://live.cybozu.co.jp) •SendGrid (http://sendgrid.com) •New Relic (http://newrelic.com)
55.
#jawsfesta 本には書けなかったはなし
56.
#jawsfesta SaaS
57.
#jawsfesta SaaS •API経由で利用
58.
#jawsfesta SaaS •API経由で利用 •SDKが用意されている場合が結構ある
59.
#jawsfesta
60.
#jawsfesta
61.
#jawsfesta
62.
#jawsfesta
63.
#jawsfesta
64.
#jawsfesta クラウド3つの分類のはなしでした
65.
#jawsfesta クラウド3つの分類のはなしでした •IaaS (Infrastructure as
a Service)
66.
#jawsfesta クラウド3つの分類のはなしでした •IaaS (Infrastructure as
a Service) •PaaS (Platform as a Service)
67.
#jawsfesta クラウド3つの分類のはなしでした •IaaS (Infrastructure as
a Service) •PaaS (Platform as a Service) •SaaS (Software as a Service)
68.
#jawsfesta ええの?わるいの?
69.
#jawsfesta 時と場合による
70.
#jawsfesta 考えられるメリット(かなり大雑把)
71.
#jawsfesta 考えられるメリット(かなり大雑把) •すぐできる
72.
#jawsfesta 考えられるメリット(かなり大雑把) •すぐできる •なかったことにできる
73.
#jawsfesta 考えられるメリット(かなり大雑把) •すぐできる •なかったことにできる •コスト
74.
#jawsfesta 考えられるデメリット(かなり大雑把)
75.
#jawsfesta 考えられるデメリット(かなり大雑把) •最後のところで融通がきかない
76.
#jawsfesta 考えられるデメリット(かなり大雑把) •最後のところで融通がきかない •英語!
77.
#jawsfesta 考えられるデメリット(かなり大雑把) •最後のところで融通がきかない •英語! •コスト
78.
#jawsfesta 時と場合による
79.
#jawsfesta まずはためしてみましょう
80.
#jawsfesta
81.
#jawsfesta
82.
#jawsfesta About Me
83.
#jawsfesta About Me
84.
#jawsfesta ためしてみるにあたって
85.
#jawsfesta 知っておくべき周辺技術
86.
#jawsfesta ssh
87.
#jawsfesta % ssh root@xxx.xxx.xxx.xxx
root@xxx.xxx.xxx.xxx's password:
88.
#jawsfesta % ssh root@xxx.xxx.xxx.xxx
root@xxx.xxx.xxx.xxx's password:
89.
#jawsfesta ssh
90.
#jawsfesta ssh •パスワードは使わずに
91.
#jawsfesta ssh •パスワードは使わずに •鍵のペアをつくり
92.
#jawsfesta ssh •パスワードは使わずに •鍵のペアをつくり •ひとつは秘密
93.
#jawsfesta ssh •パスワードは使わずに •鍵のペアをつくり •ひとつは秘密 •ひとつは相手に渡す
94.
#jawsfesta ssh •パスワードは使わずに •鍵のペアをつくり •ひとつは秘密 •ひとつは相手に渡す •やりとりするときに照合して
95.
#jawsfesta ssh •パスワードは使わずに •鍵のペアをつくり •ひとつは秘密 •ひとつは相手に渡す •やりとりするときに照合して •アクセスしていいよ∼
96.
#jawsfesta
97.
#jawsfesta
98.
#jawsfesta
99.
#jawsfesta
100.
#jawsfesta コードのデプロイの1案(AWS)
101.
#jawsfesta コードのデプロイの1案(AWS) •Git のリモートリポジトリを作る
102.
#jawsfesta コードのデプロイの1案(AWS) •Git のリモートリポジトリを作る •サーバとの通信はキーペアを使ったssh
103.
#jawsfesta コードのデプロイの1案(AWS) •Git のリモートリポジトリを作る •サーバとの通信はキーペアを使ったssh •サーバ側で git
pull
104.
#jawsfesta コードのデプロイの1案(AWS) •Git のリモートリポジトリを作る •サーバとの通信はキーペアを使ったssh •サーバ側で git
pull •composer install など
105.
#jawsfesta コードのデプロイの1案(Pagoda Box)
106.
#jawsfesta コードのデプロイの1案(Pagoda Box) •Git のリモートリポジトリを作る
107.
#jawsfesta コードのデプロイの1案(Pagoda Box) •Git のリモートリポジトリを作る •手元に
git clone
108.
#jawsfesta コードのデプロイの1案(Pagoda Box) •Git のリモートリポジトリを作る •手元に
git clone •Pagoda Boxのリポジトリを git remote add
109.
#jawsfesta コードのデプロイの1案(Pagoda Box) •Git のリモートリポジトリを作る •手元に
git clone •Pagoda Boxのリポジトリを git remote add •サーバとの通信はキーペアを使ったssh
110.
#jawsfesta コードのデプロイの1案(Pagoda Box) •Git のリモートリポジトリを作る •手元に
git clone •Pagoda Boxのリポジトリを git remote add •サーバとの通信はキーペアを使ったssh •サーバ側に git push
111.
#jawsfesta コードのデプロイの1案(Pagoda Box) •Git のリモートリポジトリを作る •手元に
git clone •Pagoda Boxのリポジトリを git remote add •サーバとの通信はキーペアを使ったssh •サーバ側に git push •composer install など
112.
#jawsfesta サンプルコード
113.
#jawsfesta サンプルコード •https://github.com/PHP-Engineers-Training-Book/ php_mook_sample
114.
#jawsfesta サンプルコード •https://github.com/PHP-Engineers-Training-Book/ php_mook_sample •デモします
115.
#jawsfesta git clone % git
clone git@github.com:PHP-‐Engineers-‐Training-‐Book/php_mook_sample.git Cloning into 'php_mook_sample'... remote: Counting objects: 37, done. remote: Compressing objects: 100% (33/33), done. remote: Total 37 (delta 0), reused 37 (delta 0) Receiving objects: 100% (37/37), 1.02 MiB | 491 KiB/s, done.
116.
#jawsfesta
117.
#jawsfesta ▾ php_mook_sample/
▾ bin/ phpmig* -‐> /Users/omoon/Documents/php_mook_sample/vendor/davedevelopment/phpmig/bin/phpmig ▾ config/ development.php pagoda.php ▸ logs/ ▾ migrations/ 20130711105053_CreateInitialTables.php* ▾ public/ ▸ assets/ index.php ▾ vendor/ ▸ composer/ ▸ davedevelopment/ ▸ doctrine/ ▸ pimple/ ▸ psr/ ▸ silex/ ▸ symfony/ ▸ twig/ autoload.php ▾ views/ index.twig Boxfile composer.json composer.lock composer.phar* phpmig.php
118.
#jawsfesta 1 {
2 "require": { 3 "silex/silex": "1.*", 4 "doctrine/dbal": "2.2.*", 5 "twig/twig": "~1.8", 6 "davedevelopment/phpmig": "*" 7 }, 8 "config": { 9 "bin-‐dir": "bin/" 10 } 11 }
119.
#jawsfesta composer install (1) $
curl -‐s http://getcomposer.org/installer | php #!/usr/bin/env php All settings correct for using Composer Downloading... Composer successfully installed to: /Users/omoon/Documents/php_mook_sample/ composer.phar Use it: php composer.phar
120.
#jawsfesta composer install (2) %
php composer.phar install Loading composer repositories with package information ... (略) ... symfony/event-‐dispatcher suggests installing symfony/dependency-‐injection () symfony/http-‐kernel suggests installing symfony/browser-‐kit () symfony/http-‐kernel suggests installing symfony/dependency-‐injection () symfony/http-‐kernel suggests installing symfony/finder () silex/silex suggests installing symfony/browser-‐kit (>=2.3,<2.4-‐dev) silex/silex suggests installing symfony/css-‐selector (>=2.3,<2.4-‐dev) silex/silex suggests installing symfony/dom-‐crawler (>=2.3,<2.4-‐dev) silex/silex suggests installing symfony/form (>=2.3,<2.4-‐dev) Generating autoload files
121.
#jawsfesta 1 <?php
2 require __DIR__ . '/../vendor/autoload.php'; 3 4 $app = new SilexApplication(); 5 6 $app-‐>register(new SilexProviderTwigServiceProvider(), array( 7 'twig.path' => __DIR__.'/../views', 8 )); 9 10 // データベース接続情報の読込 11 $env = getenv('APP_ENV') ?: 'development'; 12 $config = require __DIR__ . "/../config/$env.php"; 13 $app-‐>register(new SilexProviderDoctrineServiceProvider(), array( 14 'db.options' => $config['db'], 15 )); 16 17 // トップ画面 18 $app-‐>get('/', function(SilexApplication $app) { 19 $posts = $app['db']-‐>fetchAll(' 20 SELECT name, message, unix_timestamp(created) as created 21 FROM posts ORDER BY created DESC LIMIT 5 22 '); 23 return $app['twig']-‐>render('index.twig', array( 24 'posts' => $posts, 25 )); 26 }); 27 28 // 投稿処理 29 $app-‐>post('/speak', function(SilexApplication $app) { 30 $name = $app['request']-‐>get('name'); 31 $message = $app['request']-‐>get('message'); 32 if ($name && $message) { 33 $app['db']-‐>insert('posts', array('name' => $name, 'message' => $message)); 34 } 35 return $app-‐>redirect('/'); 36 }); 37 38 $app-‐>run();
122.
#jawsfesta 1 <?php
2 require __DIR__ . '/../vendor/autoload.php'; 3 4 $app = new SilexApplication(); 5 6 $app-‐>register(new SilexProviderTwigServiceProvider(), array( 7 'twig.path' => __DIR__.'/../views', 8 )); 9 10 // データベース接続情報の読込 11 $env = getenv('APP_ENV') ?: 'development'; 12 $config = require __DIR__ . "/../config/$env.php"; 13 $app-‐>register(new SilexProviderDoctrineServiceProvider(), array( 14 'db.options' => $config['db'], 15 )); 16 17 // トップ画面 18 $app-‐>get('/', function(SilexApplication $app) { 19 $posts = $app['db']-‐>fetchAll(' 20 SELECT name, message, unix_timestamp(created) as created 21 FROM posts ORDER BY created DESC LIMIT 5 22 '); 23 return $app['twig']-‐>render('index.twig', array( 24 'posts' => $posts, 25 )); 26 }); 27 28 // 投稿処理 29 $app-‐>post('/speak', function(SilexApplication $app) { 30 $name = $app['request']-‐>get('name'); 31 $message = $app['request']-‐>get('message'); 32 if ($name && $message) { 33 $app['db']-‐>insert('posts', array('name' => $name, 'message' => $message)); 34 } 35 return $app-‐>redirect('/'); 36 }); 37 38 $app-‐>run();
123.
#jawsfesta 1 <?php
2 require __DIR__ . '/../vendor/autoload.php'; 3 4 $app = new SilexApplication(); 5 6 $app-‐>register(new SilexProviderTwigServiceProvider(), array( 7 'twig.path' => __DIR__.'/../views', 8 ));
124.
#jawsfesta 10 // データベース接続情報の読込 11
$env = getenv('APP_ENV') ?: 'development'; 12 $config = require __DIR__ . "/../config/$env.php"; 13 $app-‐>register(new SilexProviderDoctrineServiceProvider(), array( 14 'db.options' => $config['db'], 15 ));
125.
#jawsfesta 17 // トップ画面 18
$app-‐>get('/', function(SilexApplication $app) { 19 $posts = $app['db']-‐>fetchAll(' 20 SELECT name, message, unix_timestamp(created) as created 21 FROM posts ORDER BY created DESC LIMIT 5 22 '); 23 return $app['twig']-‐>render('index.twig', array( 24 'posts' => $posts, 25 )); 26 });
126.
#jawsfesta 1 {
2 "require": { 3 "silex/silex": "1.*", 4 "doctrine/dbal": "2.2.*", 5 "twig/twig": "~1.8", 6 "davedevelopment/phpmig": "*" 7 }, 8 "config": { 9 "bin-‐dir": "bin/" 10 } 11 }
127.
#jawsfesta 28 // 投稿処理 29
$app-‐>post('/speak', function(SilexApplication $app) { 30 $name = $app['request']-‐>get('name'); 31 $message = $app['request']-‐>get('message'); 32 if ($name && $message) { 33 $app['db']-‐>insert('posts', array('name' => $name, 'message' => $message)); 34 } 35 return $app-‐>redirect('/'); 36 });
128.
#jawsfesta 38 $app-‐>run();
129.
#jawsfesta とにかくためしてみましょう
130.
#jawsfesta ありがとうございました
Jetzt herunterladen