５分で開発スタート：KITEMATIC(Docker)を使用したFuelPHP+ACCON開発サーバーの作成 （インストール手順：Windows/Mac）

# 最新の手順は【[Qiita:ACCONの導入と起動確認](http://qiita.com/maemori/items/93ca5074b28d1ed012ea)】をご参照ください。
------

## 1.KITEMATICのインストール
### 1.1.KITEMATICのダウンロード
  ※すでにDockerを導入済みの場合「2.FuelPHP+ACCONのインストール  」へおすすみください  
  DockerのGUIであるKITEMATICをダウンロード
[https://kitematic.com/](https://kitematic.com/)にアクセスしてKITEMATICをダウンロード  
![KITEMATIC](https://lh3.googleusercontent.com/zSb-hoGhnZys67lMFO6K-bOayXXVDtGxdqGN0dQA1yg=w525-h400-no)  
-----

### 1.2.KITEMATICのインストール
ダウンロードしたファイルの実行  （Dockerを利用するために必要なソフトウェアが自動でインストールされます）  
  ![KITEMATIC](https://lh3.googleusercontent.com/KWaC-HdrL64XQmdVhlj7ProMPqeyLrv87Svh4QHJrRA=w800-h571-no)    

-----
Docker Hubのログインをスキップ（後ほどいつでもログインできます）  
  ![KITEMATIC](https://lh3.googleusercontent.com/xg_0PODzbpAiTXaSmNN7Ni_hG0lQVx-8uh5Y6-npVvI=w794-h597-no)    

  KITEMATICのインストールが完了  

-----
## 2.FuelPHP+ACCONのインストール  
  FuelPHP+ACCONの内容はこちらをご参照ください→[システム構成図](https://kurobuta.jp/books/book/manual/accon//?id=47)  

-----
### 2.1.FuelPHP+ACCONのコンテナイメージ（仮想マシン）の取得
  「DOCKER CLI」をクリックしコンソールを開きます
  ![DOCKER CLI](https://lh3.googleusercontent.com/prjVJp2yghUMXPNOaQgj5woosh0FsJMAarz-t9jQ76A=w798-h596-no)    

  次のコマンドを入力して「FuelPHP+ACCONのコンテナイメージ」を取得・・・（Windos/Mac）

``` bash
docker pull accon/fuelphp-accon
```

  ![DOCKER pull](https://lh3.googleusercontent.com/BDmByQTbvJRBxHMbPuDDbTvbUYItNZQD2f-n-nqrJ-o=w855-h537-no)    

```bash
Status: Downloaded newer image for accon/fuelphp-accon:latest  
```
実行後、このメッセージが表示された場合、正しく取得できています

### 2.2.仮想サーバーとの共有ディレクトリを作成  
  「FuelPHP+ACCONのコンテナイメージ」を起動すると実行される開発サーバーとファイルを共有するため２つのディレクトリを作成  

 * ~/develop/data-volume/workspace：FuelPHPのプロジェクトが設置されます
 * ~/develop/data-volume/data：MySQLのデータベースとテーブル、初期データ作成用のスクリプトが設置されます

  初期状態は空ですが、初回実行時にこれからの開発で使用するファイルたちが自動設置されます

* Windowsの場合

```bash
mkdir ~/develop/data-volume/workspace
mkdir ~/develop/data-volume/data
```

* Macの場合

```bash
mkdir -p ~/develop/data-volume/workspace
mkdir -p ~/develop/data-volume/data
```

  ![Mkdir](https://lh3.googleusercontent.com/ytnmMY8brUB1xH9T8kh43NhrsP8QxYFNnKqNPss4dXE=w861-h546-no)    

### 2.1.FuelPHP+ACCONのコンテナ（開発サーバー）の起動
  下のコマンドを実行しコンテナ（開発サーバー）を起動します

* Windowsの場合

```bash
docker run -d -v /c/Users/[ユーザID]/develop/data-volume/data:/develop/data:rw -v /c/Users/[ユーザID]/develop/data-volume/workspace:/develop/workspace:rw -p 80:80 -p 443:443 -p 3306:3306 -t -i -h project-server-01 --name project-server-01 accon/fuelphp-accon
```

  ※[ユーザID]は適宜変更してください

* Macの場合

```bash
docker run -d \
 -v ~/develop/data-volume/data:/develop/data:rw \
 -v ~/develop/data-volume/workspace:/develop/workspace:rw \
 -p 80:80 \
 -p 443:443 \
 -p 3306:3306 \
 -t -i \
 -h project-server-01 \
 --name project-server-01 \
 accon/fuelphp-accon
```

起動できた場合、コンテナのIDが表示されます
  ![docker run](https://lh3.googleusercontent.com/FZ1rvhR7g3A8XYZmrvF13BU_E0QlWt3GGbk5ZZUcb8E=w856-h542-no)    

### 2.2.FuelPHP+ACCONのコンテナイメージ（仮想マシン）の起動確認

#### 2.2.1.KITEMATICを表示してコンテナが起動していることを確認します
  正常に起動できていた場合、「project-server-01」と言うサーバー名の左に緑色の起動中マークが付きます
  サーバー名を開き、状態を開きます
  ![docker run](https://lh3.googleusercontent.com/NolvGYoEvQ8kwVci5hwR2IyEcxq5v1eESFjdxF3gpQ8=w800-h596-no)    

#### 2.2.2.コンテナのWebプレビューをクリックしブラウザで開発サーバーにアクセスします  
  ※TCPの次のポートを開く必要があります ファイアーウォールの設定を行ってください 80(HTTP)、443(HTTPS)、3306(Mysql)、9001(Xdebug)
  ![docker run](https://lh3.googleusercontent.com/qlmFRdBU-53fv0SrXG7ywRRWrXMG-WDm9gr8kQ8-Pdk=w798-h597-no)    
  ※HTTPSは事故証明書を使用しているためブラウザに警告が表示されますが開発には問題ありません 許可をお願いします

  下のようにブラウザにアプリケーション画面が表示されると正常に起動しています
  ![docker run](https://lh3.googleusercontent.com/qzg8Svjx1Fmq1PQTJhfQspEI6-0PIXXYFfUoHRG9rNw=w1608-h1078-no)    

#### 各種ミドルウェア（WWWサーバーやデータベースサーバー）が起動しており、サンプルアプリケーションが動作している状態です  
データベース（MySQL）に初期データが投入された状態で起動しています

* サンプル・アプリケーションのトップページに書かれているユーザID、パスワードでログイン可能です
* 権限があるユーザでログインを行うと、上部に［管理］メニューが出現します（アクセス制御の管理画面など操作可能です）

-----

アプリケーション層の説明は、また後日。