*

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

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

【解説】Googleウェブマスターツールの使い方

サイトの分析やアクセス解析のツールと言えばGoogleAnalyticsですよね。 このブ

記事を読む

no image

google translate

もうね、すごいとしか。http://www.google.com/webelements/#!/tr

記事を読む

no image

タグクラウド機能を付加。

右側のナビにタグクラウドを付けた。どうでしょうか。それにしてもワードプレスってタグが簡単だよね。wp

記事を読む

no image

WordCampTokyo2011行ってきた

WordCampTokyo2011 http://2011.tokyo.wordcamp.

記事を読む

【今さら】ブラインドタッチができるようになるまでにやった3つの事【もういいでしょ】

過去、仕事で一緒になった人がブラインドタッチが苦手だということがありました。 両手の人差し

記事を読む

PV5000/月達成したのでまたGoogleAnalyticsのデータを公開します

めちゃくちゃに力を入れていた訳でもなく、特にすごいコンテンツをエントリーした訳でもないのに、

記事を読む

no image

ワードプレスのプラグイン初作成

タイトルのとおり。ワードプレスのプラグインを作ってみました。仕事でEC-CUBE使って販売をしている

記事を読む

さくらインターネットでPEARを使ってみる

以前、自分が持っている書籍を管理するアプリ「ブックマネージャー」を作ってアップしてたのですが

記事を読む

no image

ec-cubeで欲しい機能

仕事で、ec-cubeを触っている。どこの企業でも同じだと思うが、ec-cubeを使っているとカスタ

記事を読む

no image

オラクル、「OpenOffice.org」コードの寄贈を表明 – CNET Japan

オラクル、「OpenOffice.org」コードの寄贈を表明 - CNET Japanオープンの流れ

記事を読む

Google AD

Google AD

PAGE TOP ↑