OpenShift Origin All-In-Oneを試す(v1.3編)


# 概要

OpenShiftの環境をlocalに構築します。
[こちら](http://jp-redhat.com/devops/page2.html)によると、OpenShiftは以下の3種類に分けられます。

* OpenShift Enterprise:オンプレミス環境向けにサポートとともに提供
* [OpenShift Online](https://www.openshift.com/features/):ネット上のでサービスとして展開
* [Openshift Origin](https://www.openshift.org/):オープンソースのコミュニティによって運営

さらに、[Openshift Origin](https://www.openshift.org/)の環境構築方法は、下記があります。
* Docker
* Vagrant
* Binary

他の方のblogをみると、Dockerでハマる例もあるようなので、[Vagrant](https://www.openshift.org/vm/)を使うことにします。

# Openshift Origin All-In-One Vagrant

[こちら](https://www.openshift.org/vm/)に下記の記載があります。今回は動作確認のため、確実に1.2を使おうと思ったのですが、

```
If you are looking for an image that matches the current version of OpenShift Online please go to the instructions for the 1.2 origin image.
```

[こちら](https://atlas.hashicorp.com/thesteve0/boxes/openshift-origin)に下記記載があったので、1.2ではなく、1.3を使うことにします。

```
This is 1.2 final release. This will also be the last release in this namespace. For the 1.3 series we will be moving to

openshift/openshift-origin

as always, the client and notes for this release can be found at

https://www.openshift.org/vm
```


Vagrant boxの[openshift/openshift-origin](https://atlas.hashicorp.com/openshift/boxes/origin-all-in-one)をみると、v1.3.0が`This is the currently released version.`とあるので、1.3.0を使うことにします。

ちなみに、OpenShift Origin1.3は、 OpenShift3.3に相当するようです。
https://blog.openshift.com/early-look-openshift-3-3/


## 参考：v1.4

[こちら](https://github.com/openshift-evangelists/vagrant-origin)は`This repository let’s you test using Vagrant a latest branch of an OpenShift Origin install`ってあるので、1.4.xの最新かな。`vagrant-origin/scripts/install.sh`をみると、master branchを使っているよう。あとで、試す。

# 今回使用した環境
MacOS: 10.10.5
vagrant: 1.8.4
VirtualBox:5.0.28

vagrantの最新版1.8.7だと、vagrant up時にエラーになったので、1.8.4を使いました。

# 構築手順
## vagrant up
[こちら](https://www.openshift.org/vm/)を参考に、下記コマンドでvagrant upします。

```LocalのMac
$ vagrant init openshift/origin-all-in-one
$ vagrant up --provider virtualbox
$ vagrant ssh
```

## version確認

vagarntで作成したVMに`vagrant ssh`後、下記で確認します。

```VM側
[vagrant@localhost ~]$ oc version
oc v1.3.0
kubernetes v1.3.0+52492b4
features: Basic-Auth

Server https://localhost:8443
openshift v1.3.0
kubernetes v1.3.0+52492b4
```

# ブラウザアプリを作成
## login
ブラウザで`https://localhost:8443`にアクセスして、下記でloginします。

```
Username: test
Password: test
```

![login.jpg](https://qiita-image-store.s3.amazonaws.com/0/4779/ca3a4508-6429-fa1a-0860-b3dda56aa2b6.jpeg "login.jpg")

![newproject.jpg](https://qiita-image-store.s3.amazonaws.com/0/4779/ea72e8f2-f1ce-60fe-3fb9-5c395977676d.jpeg "newproject.jpg")

## プロジェクト作成

Nameに`firstapp`と入力して、Createをクリックします。

![create_project.jpg](https://qiita-image-store.s3.amazonaws.com/0/4779/38cf2d05-e611-80d8-f7ef-f95f81ab8415.jpeg "create_project.jpg")


## アプリ作成

いろいろな言語、middlewareが選択できます。
今回は、php5.6を選択します。

![createapp.jpg](https://qiita-image-store.s3.amazonaws.com/0/4779/18da8ce4-1441-70c4-387e-656869d3c364.jpeg "createapp.jpg")

phpの画面内、Nameに`hello`を入力して、Git Repository URLは'Try it'をクリックします。最後に、Createをクリックします。

![craeteapp2.jpg](https://qiita-image-store.s3.amazonaws.com/0/4779/1224ac31-831b-fce7-8c20-fb4d03b1937d.jpeg "craeteapp2.jpg")

アプリ作成完了すると、下記画面が表示されます。

![createapp3.jpg](https://qiita-image-store.s3.amazonaws.com/0/4779/5f7787fc-4d81-7c2f-354d-8f14c9e4e20c.jpeg "createapp3.jpg")


## 動作確認

上記の「Go to overview」をクリックすると、このアプリのoverview画面に遷移します。

![overview.jpg](https://qiita-image-store.s3.amazonaws.com/0/4779/b8c7cca8-697f-2b73-62d0-f5244a7bc1ac.jpeg "overview.jpg")


上記画面の右上のlink(今回の例だと、`http://example-firstapp.apps.10.2.2.2.xip.io`)をクリックすると、作成されたアプリが表示されます。

![sampleapp.jpg](https://qiita-image-store.s3.amazonaws.com/0/4779/bd5f3fcf-b39b-ecf6-68bd-484aa540225d.jpeg "sampleapp.jpg")


# まとめ

* 今回は、OpenShift Origin All-In-Oneのvagrnat環境を使って構築方法を確認しました。
* OpenShift Originのドキュメントは下記をご参照ください。
	* https://docs.openshift.org/latest/welcome/index.html