Bolt CMS を Sqale.jp にインストールする手順


自分は公式にある`git`と`composer`によるインストールの方法でやりました。
[Option 3: The developer way, using Git and Composer.](https://docs.bolt.cm/installation#option-3-developer-way-using-git-and-composer)

## 追記
ローカルにインストールしてからデプロイする方法に変えました。


# 0. 下準備

[sqale.jp](https://sqale.jp/projects/new)でPHPアプリを作成し、ローカルに`git clone`する。

```
$ mkdir YOUR_PROJECT
$ cd YOUR_PROJECT
$ git clone ssh://sqale@gateway.sqale.jp:2222/YOU/YOUR_PROJECT.git
$ cd YOUR_PROJECT
```

# 1. Boltを設置

`git clone`して`composer`でバンドルをインストールするだけ。ちゃんとパーミッションも変更しておきましょう。

```
$ cd public
$ git clone git://github.com/bolt/bolt.git bolt
$ cd bolt
$ curl -s http://getcomposer.org/installer | php
$ php composer.phar install
$ chmod -R 777 files/ app/database/ app/cache/ app/config/ theme/ extensions/

```
`$ php composer.phar install`で下記のようなエラーが出る場合、githubにaccess tokenを得る必要があります。こちらを参考に設定をします。
[ComposerでGitHubのリポジトリをHTTPSで追加したときの認証設定](http://qiita.com/fivestar/items/fc15e0bb379c791ff6b2)

```エラー
Could not fetch https://api.github.com/repos/silexphp/Silex/zipball/57c98ea0cb47664096094912920951fde1f4631a, enter your GitHub credentials to go over the API rate limit
The credentials will be swapped for an OAuth token stored in /home/sqale/.composer/auth.json, your password will not be stored
To revoke access to this token you can visit https://github.com/settings/applications
Username: 
```

`/bolt`配下をすべてドキュメントルートへ移動。（※本当はアプリ`/bolt`配下のママ、サイトの表示はルートにしたいができなかったのでしかたなくぶちまけてます..）

```
$ mv bolt/* ./
$ mv bolt/.??* ./
$ rm -r bolt
```


# 3.DBを設定

Boltの設定ファイルをコピーします。

```
$ cp app/config/config.yml.dist app/config/config.yml
$ vi app/config/config.yml
```

で、DB情報を書き換え。
`Sqale`の場合ここから得られます。
https://sqale.jp/projects/YOUR_PROJECT/shared_database

```config.yml
database:
  driver: mysql
  databasename: sqale_**********
  username: sqale_**********
  password: ********************
  host: mysql***.sqale.jp
```
※ちなみに、ローカルでは設定を変えたい場合、`config_local.yml`に別途記入すれば項目が上書きされる。参考：[Installing Bolt | Bolt documentation | Different configs per environment](https://docs.bolt.cm/installation#different-configs-environment)

たとえば、MAMPならばこう。

```config_local.yml
database:
  driver: mysql
  databasename: YOUR_DB_NAME
  username: root
  password: root
  host: localhost
  port: 8889

```

# 4.日本語化
ついでに日本語化しておきます。
`locale`の行を下記に。

```config.yml
locale: ja_JP
timezone: Asia/Tokyo
```

# 5.インストール
ローカルでブラウザからインストールを進めます。
以下MAMPの例。

http://localhost:8888

はじめは下記に転送されるはずです。必要事項を入力します。
http://localhost:8888/bolt/users/edit/

![http://localhost:8888/bolt/users/edit/](http://i.gyazo.com/020a2592e1fc0daf1552732ef9bb633d.png)

# 6.ログイン
続いて今登録したユーザー情報でログインするとダッシュボードがあらわれます。

http://localhost:8888/bolt/

![http://localhost:8888/bolt/](http://i.gyazo.com/b27059ae4b88e42d7d4fa2e558ad5d3c.png)


http://localhost:8888

にアクセスして、デフォルトテーマのブログが表示されれば成功です。

![](http://i.gyazo.com/d1abfaeeb674d06b511538ea39bbb6fe.png)

# 追記
アプリを`/bolt`に配置して、サイトは`/`アクセスで表示されるように
したくていろいろやってみたがダメだった。なにかいい方法ないでしょうか。

## やったこと
- `.htacess`と`index.php`をルートにコピーして中に記述してあるパスに`/bolt`を追加（WordPressのように）→ 表示されたが、`theme`のパスが`/bolt/theme`となるべきなのに`/theme`になってしまう。


# 7. Sqaleにデプロイ

sqaleから`git clone`した`.git`があるディレクトリへ`cd`して、

'''
$ git add .
$ git commit -m 'installed Bolt'
$ git push
'''

すればOK！


...


と思ったが、デプロイでエラーが出てコケる…
push はできてるようだが、サーバー側でのbuildでエラーが出ている模様。。現在問い合わせ中