SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
俺のローカル開発環境
2014.01.18
taiju @ MTDDC Meetup NAGOYA 2014
自己紹介
• @taiju ( 東 大樹 / HIGASHI Taiju )
• アルファサード サポートエンジニア ( 2年目 )
• ブログ => あと味
• 去年は MT + PowerCMS 漬け
• 今年はコードを書く時間を増やす
サポートエンジニア
• 製品 ( PowerCMS + MT ) の質問への回答
• 不具合の検証・修正
• パッチ作成
• 新機能のテスト
• 機能開発
本題
軽快で簡単に作れる
ローカル開発環境ほしい
求める要素
• できるかぎり速く
• ソフトウェアの設定を極力せず
• ポータブルで
• いつでもどこでも作れる
(すべて俺基準)
最初
ローカル開発環境の作り方
• PSGI で MT を使う ( MT::PSGI ない時は、
miyagawa さんの gist で )

• ワンライナーでサーバー起動

$ starman --pid=mt.pid mt.psgi

• /path/to/mt-static/sites をウェブサイトの公

開パスにする
( Apache, Nginx 等の HTTP サーバー不要に )

• DB の作成と mt-config.cgi の設定のみ
不満だったこと
• ウェブサイトの URL が mt-static のサブディ
レクトリになる
http://localhost:5000/mt-static/sites/

• index.html などのファイル名を省略できない
2013年
http://taiju.hatenablog.com/entry/20130203/1359885017
達成したこと
• app.psgi で、任意の Plack ミドルウェアを適
用することで、静的ファイルの配信周りを自由
に制御できるようになった
$ starman --pid=mt.pid app.psgi

• ウェブサイトの URL から mt-static 消えた
http://localhost:5000/
不満だったこと
• app.psgi を用意する必要があった
※現在のように Plack ミドルウェアを適用する手段がなかった

• PHP ( ダイナミック ) 使う時は、
結局 Apache or Nginx を使っていた
2014年
それらの不満を解消する
プラグインを作り始める
Nakaisan
(仲居さん)
Nakaisan
• MT プラグイン ( Plack ミドルウェア )
https://github.com/taiju/mt-plugin-Nakaisan

• Server -> 給仕係 -> 仲居さん
• プラグインを設置すると、ドメインルートで
静的ファイルを配信できるようになる

• PHP ( ダイナミックパブリッシング・
DynamicMTML ) にも対応
DEMO
ご清聴ありがとうございました

Contenu connexe

Tendances

Movable type seminar_20121204
Movable type seminar_20121204Movable type seminar_20121204
Movable type seminar_20121204
Six Apart
 
20130126 mtddcms
20130126 mtddcms20130126 mtddcms
20130126 mtddcms
yokonaka
 
20140120 Movable Type Seminar
20140120 Movable Type Seminar20140120 Movable Type Seminar
20140120 Movable Type Seminar
Six Apart
 
20130611 movable type nagoya seminar
20130611 movable type nagoya seminar20130611 movable type nagoya seminar
20130611 movable type nagoya seminar
Six Apart
 

Tendances (20)

Movable type seminar_20121204
Movable type seminar_20121204Movable type seminar_20121204
Movable type seminar_20121204
 
20130126 mtddcms
20130126 mtddcms20130126 mtddcms
20130126 mtddcms
 
20140120 Movable Type Seminar
20140120 Movable Type Seminar20140120 Movable Type Seminar
20140120 Movable Type Seminar
 
Data APIで広がるWebサイトのオモテとウラ
Data APIで広がるWebサイトのオモテとウラData APIで広がるWebサイトのオモテとウラ
Data APIで広がるWebサイトのオモテとウラ
 
見せたいデータに応じた取得方法を選ぼう!画面更新、ポーリング、WebSocketの比較
見せたいデータに応じた取得方法を選ぼう!画面更新、ポーリング、WebSocketの比較見せたいデータに応じた取得方法を選ぼう!画面更新、ポーリング、WebSocketの比較
見せたいデータに応じた取得方法を選ぼう!画面更新、ポーリング、WebSocketの比較
 
20130611 movable type nagoya seminar
20130611 movable type nagoya seminar20130611 movable type nagoya seminar
20130611 movable type nagoya seminar
 
20160402_Awsで簡単実装cmsサイト
20160402_Awsで簡単実装cmsサイト20160402_Awsで簡単実装cmsサイト
20160402_Awsで簡単実装cmsサイト
 
kintone café 大阪 Vol.1
kintone café 大阪 Vol.1kintone café 大阪 Vol.1
kintone café 大阪 Vol.1
 
Ckan + AWS
Ckan + AWSCkan + AWS
Ckan + AWS
 
第一回REST勉強会_鈴木商店の開発環境
第一回REST勉強会_鈴木商店の開発環境第一回REST勉強会_鈴木商店の開発環境
第一回REST勉強会_鈴木商店の開発環境
 
BITRISEを使っています
BITRISEを使っていますBITRISEを使っています
BITRISEを使っています
 
Inside pixiv's infrastructure〜application cluster side〜
Inside pixiv's infrastructure〜application cluster side〜Inside pixiv's infrastructure〜application cluster side〜
Inside pixiv's infrastructure〜application cluster side〜
 
第一回Rest勉強会 ワークショップ
第一回Rest勉強会 ワークショップ第一回Rest勉強会 ワークショップ
第一回Rest勉強会 ワークショップ
 
Introduction of bitbank frontend development environment
Introduction of bitbank frontend development environmentIntroduction of bitbank frontend development environment
Introduction of bitbank frontend development environment
 
Azure Cloud Shell
Azure Cloud ShellAzure Cloud Shell
Azure Cloud Shell
 
Cloudpackが実現するビジネス課題の解決と新しい価値の提供
Cloudpackが実現するビジネス課題の解決と新しい価値の提供Cloudpackが実現するビジネス課題の解決と新しい価値の提供
Cloudpackが実現するビジネス課題の解決と新しい価値の提供
 
Innovation egg 第5回 『クラウド運用の本音』オープニング
Innovation egg 第5回 『クラウド運用の本音』オープニングInnovation egg 第5回 『クラウド運用の本音』オープニング
Innovation egg 第5回 『クラウド運用の本音』オープニング
 
OpenWhisk Serverless への期待
OpenWhisk Serverless への期待OpenWhisk Serverless への期待
OpenWhisk Serverless への期待
 
インフラ刷新プロジェクト「Neco」が目指す最高のクラウドとは
インフラ刷新プロジェクト「Neco」が目指す最高のクラウドとはインフラ刷新プロジェクト「Neco」が目指す最高のクラウドとは
インフラ刷新プロジェクト「Neco」が目指す最高のクラウドとは
 
altJSの選び方
altJSの選び方altJSの選び方
altJSの選び方
 

En vedette

MTDDC2014 Nagoya_Makino
MTDDC2014 Nagoya_MakinoMTDDC2014 Nagoya_Makino
MTDDC2014 Nagoya_Makino
Ken Makino
 

En vedette (6)

MTDDC Meetup NAGOYA 2014_LT資料
MTDDC Meetup NAGOYA 2014_LT資料MTDDC Meetup NAGOYA 2014_LT資料
MTDDC Meetup NAGOYA 2014_LT資料
 
MTとAzureの素敵な関係 '14名古屋
MTとAzureの素敵な関係 '14名古屋MTとAzureの素敵な関係 '14名古屋
MTとAzureの素敵な関係 '14名古屋
 
MTDDC2014 Nagoya_Makino
MTDDC2014 Nagoya_MakinoMTDDC2014 Nagoya_Makino
MTDDC2014 Nagoya_Makino
 
コンテンツとCMSの上手な付き合い方
コンテンツとCMSの上手な付き合い方コンテンツとCMSの上手な付き合い方
コンテンツとCMSの上手な付き合い方
 
ロフトワークが実践する「CMSを導入したい人とCMSを導入する人とのギャップの埋め方」の秘訣!
ロフトワークが実践する「CMSを導入したい人とCMSを導入する人とのギャップの埋め方」の秘訣!ロフトワークが実践する「CMSを導入したい人とCMSを導入する人とのギャップの埋め方」の秘訣!
ロフトワークが実践する「CMSを導入したい人とCMSを導入する人とのギャップの埋め方」の秘訣!
 
サービス業から学んだコミュニケーションのコツ
サービス業から学んだコミュニケーションのコツサービス業から学んだコミュニケーションのコツ
サービス業から学んだコミュニケーションのコツ
 

Similaire à 俺のローカル開発環境 - MTDDC Meetup NAGOYA 2014

Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会
Masakazu Muraoka
 
hbstudy#6LTyuzorock
hbstudy#6LTyuzorockhbstudy#6LTyuzorock
hbstudy#6LTyuzorock
yuzorock
 

Similaire à 俺のローカル開発環境 - MTDDC Meetup NAGOYA 2014 (20)

MTプラグイン入門以前
MTプラグイン入門以前MTプラグイン入門以前
MTプラグイン入門以前
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
 
Slurmのジョブスケジューリングと実装
Slurmのジョブスケジューリングと実装Slurmのジョブスケジューリングと実装
Slurmのジョブスケジューリングと実装
 
Introduction to NetOpsCoding#2
Introduction to NetOpsCoding#2Introduction to NetOpsCoding#2
Introduction to NetOpsCoding#2
 
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Appsグリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
 
私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由
 
プランナーがPR駆動してみた話
プランナーがPR駆動してみた話プランナーがPR駆動してみた話
プランナーがPR駆動してみた話
 
作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版
 
社内の遊休PCをAzurePipelinesでCICDに活用しよう
社内の遊休PCをAzurePipelinesでCICDに活用しよう社内の遊休PCをAzurePipelinesでCICDに活用しよう
社内の遊休PCをAzurePipelinesでCICDに活用しよう
 
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasiaサンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
サンタクロースを支えるIT技術 @M_Ishikawa #yapcasia
 
データファースト開発
データファースト開発データファースト開発
データファースト開発
 
佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合う佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合う
 
Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会Rdbms起点で考えると見えない世界 okuyama勉強会
Rdbms起点で考えると見えない世界 okuyama勉強会
 
hbstudy#6LTyuzorock
hbstudy#6LTyuzorockhbstudy#6LTyuzorock
hbstudy#6LTyuzorock
 
(Draft) lambda architecture by using TreasureData
(Draft) lambda architecture by using TreasureData(Draft) lambda architecture by using TreasureData
(Draft) lambda architecture by using TreasureData
 
メディアコンテンツを支えるデータストアサービスをAWSで
メディアコンテンツを支えるデータストアサービスをAWSでメディアコンテンツを支えるデータストアサービスをAWSで
メディアコンテンツを支えるデータストアサービスをAWSで
 

Plus de taiju higashi (8)

一兵卒の New Normal Agile
一兵卒の New Normal Agile一兵卒の New Normal Agile
一兵卒の New Normal Agile
 
MTDDC 2013 LT | Hello, my little giant
MTDDC 2013 LT | Hello, my little giantMTDDC 2013 LT | Hello, my little giant
MTDDC 2013 LT | Hello, my little giant
 
やすい・はやい・うまいMTのホスティング環境を求めて - jaws-ug-3to-2013-sprint
やすい・はやい・うまいMTのホスティング環境を求めて - jaws-ug-3to-2013-sprintやすい・はやい・うまいMTのホスティング環境を求めて - jaws-ug-3to-2013-sprint
やすい・はやい・うまいMTのホスティング環境を求めて - jaws-ug-3to-2013-sprint
 
LESS楽しいれす(^q^)
LESS楽しいれす(^q^) LESS楽しいれす(^q^)
LESS楽しいれす(^q^)
 
Sassられ指南
Sassられ指南Sassられ指南
Sassられ指南
 
JavaScriptとLisp
JavaScriptとLispJavaScriptとLisp
JavaScriptとLisp
 
Learning jQuery
Learning jQueryLearning jQuery
Learning jQuery
 
Learning regular expression
Learning regular expressionLearning regular expression
Learning regular expression
 

Dernier

Dernier (12)

Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

俺のローカル開発環境 - MTDDC Meetup NAGOYA 2014