*

composerでcakephpをインストールしてプロジェクトを始めてみる

logo-composer-transparent

こんにちは!今日も寒いです。
この時期になると気になってくるのが花粉症です。
自分は花粉症なのでちょっと早めに薬を飲み始めてます。
早い時期に飲み始めるだけでも効果があるようですよ。

さて今回は、composerを使ってcakephpをインストールしてプロジェクトを始める、ということをやってみます。
cakephpを入れたはいいけどバージョン管理が面倒だったり、プラグインのバージョン管理が大変だったり、そういった手間をcomposerが引き受けてくれます。

Composer
https://getcomposer.org/

cakephpをインストールするのも楽だし、その運用も楽になるということらしいです。
さっそくその手順をお伝えします。

1.ディレクトリを用意する

まずはディレクトリを用意します。
そしてそのディレクトリに移動します。

2.composerを導入

$ curl -sS https://getcomposer.org/installer | php

ターミナルで1.で作ったディレクトリにアクセスし、上記をコマンドラインで叩くと、以下のようなメッセージが出て、ディレクトリ内にcomposer.pharファイルができます。

#!/usr/bin/env php
All settings correct for using Composer
Downloading…
Composer successfully installed to: /www/cake/composer.phar
Use it: php composer.phar

3.jsonに依存関係を記述する

jsonファイルを新規作成して、composer.pharと同じ階層に配置しましょう。
pearレポジトリにcakephpが入っているので、それを参照します。
ここでは名前を”cake-app”としています。

{
    "name": "cake-app",
    "repositories": [
        {
            "type": "pear",
            "url": "http://pear.cakephp.org"
        }
    ],
    "require": {
        "pear-cakephp/cakephp": "2.4.*",
        "cakephp/debug_kit": "2.2.*"
    },
    "config": {
        "vendor-dir": "Vendor/"
    }
}

上記ができたら「composer.json」と名前をつけて1.のディレクトリにいれておきます。

4.composerをインストール

$ ./composer.phar install

実行するとこんなメッセージが出ると思います。
Loading composer repositories with package information
Initializing PEAR repository http://pear.cakephp.org
Installing dependencies (including require-dev)
– Installing composer/installers (v1.0.9)
Loading from cache

– Installing pear-pear.cakephp.org/cakephp (2.4.5)
Loading from cache
– Installing cakephp/debug_kit (2.2.2)
Loading from cache

Writing lock file
Generating autoload files

「Vendor」「Plugin」というディレクトリ、それと「composer.lock」というファイルができます。
Vendorの中にCakePHP本体が入っています。
これでいったんcakephpのインストールは完了です。

5.cakephpをbakeしてプロジェクトを作成

ここまでできたらbakeしてプロジェクトを作成してみましょう。

$ ./Vendor/bin/cake bake --app app

Welcome to CakePHP v2.4.5 Console
—————————————————————
App : app
Path: /www/app/
—————————————————————
Skel Directory: /www/cake/vendor/pear-pear.cakephp.org/CakePHP/Cake/Console/Templates/skel
Will be copied to: /www/cake
—————————————————————

Warning Errorとか出ますが、コピーするかどうか聞かれてます。
分からないときは「y」で次に進みましょう。

—————————————————————
Created: app in /www/app
—————————————————————
* Random hash key created for ‘Security.salt’
* Random seed created for ‘Security.cipherSeed’
* Cache prefix set
* app/Console/cake.php path set.
CakePHP is not on your `include_path`, CAKE_CORE_INCLUDE_PATH will be hard coded.
You can fix this by adding CakePHP to your `include_path`.
* CAKE_CORE_INCLUDE_PATH set to /www/cake/vendor/pear-pear.cakephp.org/CakePHP in webroot/index.php
* CAKE_CORE_INCLUDE_PATH set to /www/cake/vendor/pear-pear.cakephp.org/CakePHP in webroot/test.php
* Remember to check these values after moving to production server
Project baked successfully!

地味に面倒なsecurity.saltや、security.cipherseedにもランダム対応してくれています。

Your database configuration was not found. Take a moment to create one.
—————————————————————
Database Configuration:
—————————————————————
Name:
[default] >

データベース関係の情報は、接続に必要な情報をそのまま打ち込んでください。
DBのホスト名(サーバ名)、ユーザ、パスワード、DB名、テーブルのエンコーディング等です。

※さくらインターネットのレンタルサーバで、マルチドメインでcakephpを使う際は、.htaccessを編集する必要があります。詳しくはこちらの記事をご覧ください。

6.DebugKitを入れる

すでにDBまで作られているので、Cakephpとしては完了してますが、ここまでで画面を見ると、DebugKitが入ってないよ、とメッセージが出るので、DebugKitも入れましょう。

app/Config/bootstrap.php に追記

CakePlugin::load('DebugKit');

今のままだとDebugKitがRoot/Pluginに入っているので、app/Pluginに移します。

$ mv Plugin/DebugKit/ app/Plugin/DebugKit/

これで画面を見るとオールグリーンになってると思います。

CakePHP  the rapid development php framework  Home

これですぐにcakephpが使えますね!

※本当はINCLUDE_PATHを変える必要があるようですが、取りあえず動作するところまで今回は説明しました。

Google AD


Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

WP-SpamFree by Pole Position Marketing

関連記事

no image

biosが起動しない。

おとといくらいから、うちのPCが起動しない。OSが起動しないだけじゃなくてBiosが起動しない。ファ

記事を読む

worrier_01

嫌われている人から好かれようと思わなくていいんだという件

自分用にちょっとしたライフハックに気づいたので、リマインダーとしてエントリー。 それは「嫌

記事を読む

no image

開発の現場に行って来た

ひょんな事から、他社の開発の現場に行く事に。 念願だったT社に!書類選考で落ちたよT社! 久

記事を読む

bounce-rate

【どうしてこうなった!?】このブログの直帰率が1%を切りました【自分史上初】

以前のエントリーで、このブログの直帰率が80%から20%に激減したことを報告しました。

記事を読む

no image

wordpressのiphone用プラグイン

Wptouchていうプラグインがあったのでいれてみた。感想は、「ん~、まあこんなものか」です。フリー

記事を読む

8166790144_0240af8bab

facebook for PHP SDKを使ってCakePHPでログアウトとポストする方法

ソチオリンピックではスノーボード・ハーフパイプで平野さん・平岡さんが初のメダル獲得をしました

記事を読む

5044276807_c03137cd7b

【アフィリエイト】WordPressプラグイン「AmazonJS」をインストールしてみました

ずん飯尾という芸人さんがいます。 中でも「現実逃避シリーズ」がプチブレイクしていて、現実離

記事を読む

no image

wordpressからbloggerに引越し

lolipopで使っているロリポプランは、DBが一つしか使用できない。もうちょっと有効に使えないかと

記事を読む

ログインアカウント

cakephpでviewからログイン判定してアカウント表示する機能

cakephpのログイン機能を、viewから判定させたかったので調べてみました。 よく

記事を読む

#Vapefam we heard you! Our Facebook login is now working 100%. Sign up today and show some support to your favorite shops by leaving a review! If you are signing up via email make sure to check you spam inbox for the confirmation email #vapeon !!

CakePHPでFacebook-PHP-SDKを使ってFacebookログインするアプリの作り方

こんにちは! 昨日は東京では45年ぶりに大雪が降りましたね! 自分の家の方でも雪が2

記事を読む

Google AD

Google AD

Slurpy.. #iphone #iphone6 #apple #jakarta #indonesia #instastyle #gadget #ios #gold
iPhone6が来ました。アップルのサポートは未だ健在だったというお話。

アップルは製品だけじゃなくて、サポートの対応にまでその企業哲学

@APPLE introduces the iPhone 6 & iPhone 6 Plus see the short film now on http://bit.ly/1qO17By #gadgets #tlselitedotcom #thelifestyleelite #thelifestyleelitedotcom #lifestyleelite #iphone6
iphone6にするか、iphone6plusにするか、まだ決めなくてもいい方法

iphone6が発表されましたね。iwatchは来年に持越しで

child
パパも2歳になったよ

早いもので子供が2歳になりました。 年を取るごとに年月が早く

The #Liberal #Democrat Avengers! The New Female Thor, African American Captain America (The former Falcon) & Steve Jobs iOS Iron Man! Lol
転職して新しい職場で仕事始めました

1か月以上もブログを放置してましたが、私は元気です。 むしろ

career change
6月末で現職を退職します

ご存知の方もいらっしゃると思いますが、6月末で現職を退職するこ

→もっと見る

PAGE TOP ↑