-   topic   - トピックス

CakeboxにphpMyAdminをインストールする

2015年12月26日 技術関係

今回はCakePHP3やLaravel5環境を簡単に構築できる「Cakebox」に、phpMyAdminをインストールする手順をメモしていきます。

20151226_data.png

この記事の環境

  • Cakebox 1.0-alpha3
  • CakePHP 3.0.8

Cakeboxについて

Cakeboxはとても便利な環境構築ツールで、Vagrantで仮想環境を立ち上げてくれます。すぐに開発に取り掛かれる環境になっていますので、MySQLも最初から入っていますが、phpMyAdminは別途インストールする必要があります。

今回は公式ドキュメントを参考にして、 導入済みのCakeboxの中にphpMyAdminをインストールしていきます。

hostsファイルを書き換える

まず最初にhostsファイルを書き換えて、末行に下記の一文を追記します。これにより、後ほどCakebox内にインストールするphpMyAdminへhttp://cakebox.phpmyadmin/でアクセスできるようになります。

10.33.10.10 cakebox.phpmyadmin

ちなみにMacをお使いの場合、hostsファイルは以下の場所にあります。

/private/etc/hosts

phpMyAdminをインストールする

続いて仮想マシンの中にphpMyAdminをインストールします。インストールはCakeboxコマンドを使って行います。vagrant upで仮想マシンを起動しvagrant sshを行って、仮想マシンの中に入ってください。

準備ができたら、下記のコマンドを実行します。

cakebox package add phpmyadmin

そのままインストールが始まりますので、しばらく待ちます。下のような文章が出てきたら終了です。

---------------------------------------------------------------
CakePHP v3.0.8 Console
---------------------------------------------------------------
Please wait... installing apt package phpmyadmin

Package installed successfully.

これでインストールは完了です。次にインストールしたphpMyAdminにブラウザからアクセスできるようにします。

Cakeboxのバーチャルホストを追加設定する

バーチャルホストなどのサーバー設定というと、ちょっと面倒な感じがしますが、Cakeboxでは下記のコマンドで一発です。

cakebox vhost add cakebox.phpmyadmin /usr/share/phpmyadmin

下記の画面がでれば成功です。

---------------------------------------------------------------
CakePHP v3.0.8 Console
---------------------------------------------------------------
Creating Nginx configuration file for cakebox.phpmyadmin

Remember to update your hosts file with: 10.33.10.10 cakebox.phpmyadmin

Installation completed successfully

ローカルマシン側のhostsファイルは最初に設定してありますので、ブラウザにhttp://cakebox.phpmyadmin/を打ち込めば、phpMyAdminへアクセスできます。なお、初期状態では下記のアカウントでログインします。

アカウント:root
パスワード:secret

おわりに

いかがだったでしょうか。Cakeboxについては公式ドキュメントがありますので、何か困ったことがあれば覗いてみると良さそうです。今回ご紹介した手順を含め、DB関連のドキュメントもありますので、興味のある方はご覧ください。

追記:インストールしたphpMyAdminの使用中に「#1146 - Table 'phpmyadmin.pma_table_uiprefs' doesn't exist」というエラーが出る場合、こちらの記事が参考になるようです。また、「phpMyAdminの管理画面のエラー表示「設定ファイルに定義されている管理ユーザ(controluser)での接続に失敗しました。」というエラーについては、こちらの記事が参考になります。