concrete5 5.7.5系のコマンドラインツールについて

この記事は、concrete5 Japan Advent Calendar 2015に参加しています。


pictron2009さんの7日目「parallaxにカスタムクラスでひと工夫」に次いで、8日目のブログです。

concrete5には、コマンドラインツールというツールが内包されています。
自分は、2014年の10月に開催されたOSC東京 2014 fallでconcrete5と出会ったので、それ以前の事はよく知らないのですが、どうも、コマンドラインツールは、concrete5 5.5などにもconcrete5 5.6からあるようです。
この記事で記載する内容は、concrete5 5.7以降でのコマンドラインツールについて記載しています。また、動作検証は、concrete5 5.7.5.3にて実施致しました。

以下、特に明記しない限り、2015年12月8日時点での記載となります。

また、この記事に記載していないコマンドラインツールの使用方法は、 日本語公式サイト(http://concrete5-japan.org/)の「コマンドラインツールの使い方」を参照して下さい。

事のはじまり・・・

2015年は何度か勉強会を主催させて頂きました。
それ以前は、WordPressの勉強会に何度か参加していましたが、いざ、自分で主催しようとすると、資料作りの為に再現性の確認や、手順の確認の為に、何度も環境を作り直して、資料や説明の準備をしていました。
1日に数十回もconcrete5をインストールする事も・・・
もう少し、concrete5に精通していれば、インストールの回数も減らせるんじゃないか?と自分でも思うけど、それでも勉強会は準備をする事で、より知識を深めたり、質問を受ける事で、気づきがあったりと、勉強会を開催するのは参加する以上に自分の為になるな?という感じです。
ただ、流石にconcrete5のインストールはもう少し楽をしたいという事で、コマンドラインツールを使ってのインストールとリセット(インストール前の状態に戻す)方法について、記事にしてみます。
また、コマンドラインツールを使用したサイト名の日本語化の方法やインストール後にデフォルト言語を日本語にする手順についても、触れておきます。

1.concrete5をダウンロードした直後

concrete5をWebサーバー上にダウンロードした直後は、以下のように、ドキュメントルート直下に
/concrete/bin
というディレクトリと、いくつかのファイルが配置されているかと思います。

コマンドラインは、この幾つかのファイルのうち
concrete5
が、コマンドラインと成ります。
ところが見ての通り、コマンドライン(コマンド)だというのに、実行権限が付いていません。

2.実行権限を付与

上記のキャプチャーでは、nginxというアカウント(ファイルの所有者であり、WEBサーバの実行アカウント)に実行権限を付与しています。
コマンドラインを使う為には、適切なユーザに実行権限を設定してあげる必要があります。
コマンドラインを実行したユーザを所有者とした、キャッシュ用のディレクトリ等がインストール時に生成されますので、一般的にはWEBサーバの実行アカウントに権限で実行可能にしてあげるのがいいでしょう。

3.日本語サイト名の為の設定ファイルの作成

ページ下部に追記アリ

マンドラインツールでconcrete5のインストールを行うと、デフォルト言語が英語(アメリカ英語)に成ります。
ただし、concrete5は元々、多言語に対応していますので、英語サイトでも日本語が使えます。
デフォルト言語の設定は、コマンドラインの引数で指定できない為、一旦、英語のままインストールするものの、サイト名は日本語でインストールしておきたいと思います。
そして、インストールを何度も繰り返す自分の場合、インストールの引数はファイルで用意しておいた方が便利なので、インストール情報を設定ファイルに書いておきます。

設定ファイルは、PHPの連想配列形式で記述します。
また、サイト名はsiteを配列キーとして記述します。

4.実行

ここまで準備ができたら、後はインストールを実行するだけです。
通常、WEBサーバのアカウントに切り替える事が出来ないかと思うので、そんな時は、sudoコマンドの-uオプションを使います。

5.インストール後の確認

無事にコマンドラインの実行が完了したら、ブラウザーからアクセスしてみましょう。
前述の通り、英語サイトとしてインストールされていると思いますが、サイト名は設定ファイルに記述した通りに成っていると思います。

インストールが確認できたら、デフォルト言語を日本語に変更する為、管理者(admin)としてログインします。
通常の(WEBベース)インストールを使うと、最初から管理者でログインした状態から開始できますが、コマンドラインツールは、ログインが必要です。(当たり前ですが・・・)

6.デフォルト言語の変更

無事にインストールが確認できたら、デフォルト言語を日本語に変えましょう。
デフォルト言語を日本語にする為には、「Dashboard」-「System & Setting」ー「Basics」ー「Languages」と進みます。


「Default Language」欄を「Japanese(Japan)」に変更後、「SAVE」ボタンを押します。
ボタンを押した瞬間、メニューも日本語に変わりますが、再ログインして・・・というメッセージが表示されるので、念のために再ログインする事をお勧めいたします。
これで、コマンドラインからのインストールとデフォルト言語を日本語にする手順は終了です。

7.インストールをやり直したい時

インストールは無事に完了したけど、もう一度、一からインストールしたい!という場合は、コマンドラインツールにオプション[c5:reset]を指定して実行します。
DB内のテーブルも綺麗に削除してくれますので、バックアップが必要な場合は、事前にバックアップを取っておきましょう。

3.日本語サイト名の為の設定ファイルの作成(改)

「サイト名だけでなく、デフォルト言語も設定ファイルで設定可能です。」とのご連絡を頂きましたので、設定ファイルに
'default-locale' => 'ja_JP',
を追記して、インストールしてみました。

確かに、デフォルト言語を指定可能でした。
うーん、自虐的ですが、こうゆう変更も設定ファイルがあれば、簡単にできますね。

(追記 2015.12.08)Katz Uenoさんから、コマンドラインツールは、5.6からとのご連絡を頂きましたので、訂正させて頂きました。
(追記 2015.12.08)菱川 拓郎さんから、「デフォルト言語は設定ファイルで指定できるよ」とのご指摘を頂きましたので、追記致しました。