Skip navigation
2015

Photon Linux のネットワーク設定は、

デフォルトだと DHCP による自動設定です。

いろいろと検証するうえで、ネットワーク設定を変更したいことがあるはずなので

実機確認してみた方法を紹介しておこうと思います。

 

IP アドレスや参照先 DNS サーバのアドレスなどを

静的なものに変更したい場合は、最近の Linux っぽい感じで

Systemd による設定変更ができます。

 

eth0 のネットワーク設定変更。

 

たとえば、デフォルトの設定ファイルは下記のようになっています。

NIC の名前は、eth0 になります。(そして 2つ目は eth1)

root [ ~ ]# cat /etc/systemd/network/10-dhcp-eth0.network

[Match]

Name=eth0

 

[Network]

DHCP=yes

 

上記のファイルのかわりに、設定ファイルを用意します。

今回は、IP アドレス、デフォルトゲートウェイ、参照 DNS サーバ(8.8.8.8) を指定しています。

root [ ~ ]# vi /etc/systemd/network/10-static-eth0.network

root [ ~ ]# cat /etc/systemd/network/10-static-eth0.network

[Match]

Name=eth0

 

[Network]

DHCP=no

Address=192.168.1.11/24

Gateway=192.168.1.1

DNS=8.8.8.8

 

元のファイルは、別のディレクトリに退避しておきます。

root [ ~ ]# mv /etc/systemd/network/10-dhcp-eth0.network ./10-dhcp-eth0.network_bk

 

systemctl restart systemd-networkd.service

で設定変更してみます。

root [ ~ ]# systemctl restart systemd-networkd.service

root [ ~ ]# systemctl status systemd-networkd.service

● systemd-networkd.service - Network Service

   Loaded: loaded (/lib/systemd/system/systemd-networkd.service; enabled)

   Active: active (running) since Sun 2015-04-26 13:35:59 UTC; 11s ago

     Docs: man:systemd-networkd.service(8)

Main PID: 322 (systemd-network)

   Status: "Processing requests..."

   CGroup: /system.slice/systemd-networkd.service

           mq322 /lib/systemd/systemd-networkd

 

Apr 26 13:35:59 photon01 systemd-networkd[322]: [/etc/systemd/network/10-static-eth0.n...k'

Apr 26 13:35:59 photon01 systemd-networkd[322]: eth0            : gained carrier

Apr 26 13:35:59 photon01 systemd-networkd[322]: lo              : gained carrier

Apr 26 13:35:59 photon01 systemd[1]: Started Network Service.

Apr 26 13:35:59 photon01 systemd-networkd[322]: eth0            : link configured

Hint: Some lines were ellipsized, use -l to show in full.

 

これで、eth0 には 設定ファイルに記載した新しい IP アドレスが付与されます。

 

ただし、変更前の IP と、変更後の IP が両方残った状態になります。

ifconfig だと eth0 に変更前の IP アドレスが表示されていますが、

ip コマンドだと、変更前 / 変更後 両方の IP アドレスが付与されていることがわかります。

root [ ~ ]# ip address show eth0

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

    link/ether 00:50:56:a0:86:93 brd ff:ff:ff:ff:ff:ff

    inet 192.168.1.10/24 brd 192.168.1.255 scope global eth0 ★古いIP

       valid_lft forever preferred_lft forever

    inet 192.168.1.11/24 brd 192.168.1.255 scope global secondary eth0 ★新しい IP

       valid_lft forever preferred_lft forever

    inet6 2408:210:a3c8:7000:250:56ff:fea0:8693/64 scope global dynamic

       valid_lft 13642sec preferred_lft 11842sec

    inet6 fe80::250:56ff:fea0:8693/64 scope link

       valid_lft forever preferred_lft forever

root [ ~ ]# ifconfig eth0

eth0      Link encap:Ethernet  HWaddr 00:50:56:A0:86:93

          inet addr:192.168.1.10  Bcast:192.168.1.255  Mask:255.255.255.0 ★古い IP

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:1807 errors:0 dropped:0 overruns:0 frame:0

          TX packets:449 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:136788  TX bytes:77519

 

たとえば、 ip address del 192.168.1.10/24 dev eth0

(192.168.1.10/24 は変更前の IP アドレス)といったコマンドで修正できますが、

いったん OS を再起動してしまった方がよいかもしれません。

 

最終的に、変更後の IP アドレスだけになります。

root [ ~ ]# ip address show eth0

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

    link/ether 00:50:56:a0:86:93 brd ff:ff:ff:ff:ff:ff

    inet 192.168.1.11/24 brd 192.168.1.255 scope global eth0

       valid_lft forever preferred_lft forever

    inet6 2408:210:a3c8:7000:250:56ff:fea0:8693/64 scope global dynamic

       valid_lft 14126sec preferred_lft 12326sec

    inet6 fe80::250:56ff:fea0:8693/64 scope link

       valid_lft forever preferred_lft forever

 

参照先 DNS サーバのアドレスは、

/etc/resolv.conf のリンク先になっている

/run/systemd/resolve/resolv.conf ファイルに反映されます。

root [ ~ ]# ls -l /etc/resolv.conf

lrwxrwxrwx 1 root root 34 Apr 22 14:51 /etc/resolv.conf -> ../run/systemd/resolve/resolv.conf

root [ ~ ]# cat /run/systemd/resolve/resolv.conf

# This file is managed by systemd-resolved(8). Do not edit.

#

# Third party programs must not access this file directly, but

# only through the symlink at /etc/resolv.conf. To manage

# resolv.conf(5) in a different way, replace the symlink by a

# static file or a different symlink.

 

nameserver 8.8.8.8

 

ホスト名の変更について。


ホスト名の変更には、hostnamectl コマンドが使用できます。

この Photon Linux では、インストール時に

「photon01」というホストを指定していました。

root [ ~ ]# uname -n

photon01

root [ ~ ]# hostname

photon01

root [ ~ ]# cat /etc/hostname

photon01

root [ ~ ]# hostnamectl

   Static hostname: photon01

         Icon name: computer-vm

           Chassis: vm

        Machine ID: d0e8e46689324de7b3940494d62ec61d

           Boot ID: 4ce68ca573eb4f669d82606bf193cb14

    Virtualization: vmware

            Kernel: Linux 3.19.2

      Architecture: x86-64

 

それでは、hostnamectl コマンドで「ph01」というホスト名に変更してみます。

ホスト名を変更すると、すぐに反映されます。

root [ ~ ]# hostnamectl set-hostname ph01

root [ ~ ]# uname -n

ph01

root [ ~ ]# hostname

ph01

root [ ~ ]# cat /etc/hostname

ph01

root [ ~ ]# hostnamectl

   Static hostname: ph01

         Icon name: computer-vm

           Chassis: vm

        Machine ID: d0e8e46689324de7b3940494d62ec61d

           Boot ID: 4ce68ca573eb4f669d82606bf193cb14

    Virtualization: vmware

            Kernel: Linux 3.19.2

      Architecture: x86-64

 

まだ、Photon Linux の技術情報ほとんど公開されてないようなので、

もう少ししたらもっとよい設定方法が紹介されるのかもしれません。

 

以上、Photon Linux のネットワーク設定変更でした。

VMware Photon Linux では、Red Hat Linux などでおなじみの RPM でパッケージ管理されています。

yum の RPM がインストールされていれば、yum コマンドも使用できます。

 

VMware Photon

http://vmware.github.io/photon/

 

「Photon Full OS (All) 」インストールの Photon Linux 1.0 TP1 には

yum がインストールされるので、yum repolist を見てみました。

root [ ~ ]# cat /etc/photon-release

VMware Photon Linux 1.0 TP1

root [ ~ ]# rpm -q yum

yum-3.4.3-1.noarch

root [ ~ ]# yum repolist

repo id          repo name                                 status

photon           VMware Photon Linux 1.0(x86_64)           427

photon-iso       VMWare Photon Linux 1.0(x86_64)           427

photon-updates   VMware Photon Linux 1.0(x86_64)Updates      0

repolist: 854


リポジトリには 427 とパッケージ数が表示されていますが、

All インストールでは、260 個 の RPM がインストールされています。

※本当に ALL というわけではないようです。

root [ ~ ]# rpm -qa | wc -l

260

 

All インストールでも RPM は少ないですが、

最小限の「Photon OS (Micro) 」インストールだと更に少なく

60 個くらいしか RPM がインストールされていません。

root [ ~ ]# rpm -qa | wc -l

61

 

Micro インストールでは、Docker どころか、vi、grep などのほぼ必須のコマンドも入っていません。

そして yum コマンドも入っていません。

root [ ~ ]# vi

-su: vi: command not found

root [ ~ ]# grep

-su: grep: command not found

root [ ~ ]# yum

-su: yum: command not found

 

しかし Micro インストールでも、「tdnf」はインストールされていました。

root [ ~ ]# tdnf --version

tdnf: 1.0.0

 

tdnf とは。

tdnf は Yum と同等の RPM パッケージ管理コマンドです。

Photon と同じく、GitHub にも公開されています。

 

vmware/tdnf

https://github.com/vmware/tdnf

※「Tiny Dandified Yum」だそうです。

root [ ~ ]# rpm -qi tdnf

Name        : tdnf

Version     : 1.0

Release     : 1

Architecture: x86_64

Install Date: Tue Apr 21 16:51:07 2015

Group       : Applications/RPM

Size        : 124586

License     : VMware

Signature   : (none)

Source RPM  : tdnf-1.0-1.src.rpm

Build Date  : Wed Apr 15 23:40:09 2015

Build Host  : discus-test

Relocations : (not relocatable)

Vendor      : VMware, Inc.

URL         : http://www.vmware.com

Summary     : dnf/yum equivalent using C libs

Description :

tdnf is a yum/dnf equivalent

which uses libhawkey and librepo

 

tdnf は、yum コマンドと同じように使えるようです。

root [ ~ ]# tdnf --help

usage: tdnf [options] COMMAND

 

List of Main Commands

 

autoerase

check-local               Checks local rpm folder for problems

check-update              Check for available package upgrades

clean                     Remove cached data

distro-sync               Synchronize installed packages to the latest available versions

downgrade                 downgrade a package

erase                     Remove a package or packages from your system

group                     Display, or use, the groups information

help                      Display a helpful usage message

history                   Display, or use, the transaction history

info                      Display details about a package or group of packages

install                   Install a package or packages on your system

list                      List a package or groups of packages

makecache                 Generate the metadata cache

provides                  Find what package provides the given value

reinstall                 reinstall a package

repolist                  Display the configured software repositories

repository-packages       Run commands on top of all packages in given repository

search                    Search package details for the given string

updateinfo                Display advisories about packages

upgrade                   Upgrade a package or packages on your system

upgrade-to                Upgrade a package on your system to the specified version

 

設定ファイルを見ると、Yum と同じリポジトリを見に行っているようです。

/etc/tdnf/tdnf.conf ファイルの repodir が

Yum のリポジトリ設定ファイルの場所を指定しています。

root [ ~ ]# cat /etc/tdnf/tdnf.conf

[main]

gpgcheck=1

installonly_limit=3

clean_requirements_on_remove=true

repodir=/etc/yum.repos.d

cachedir=/var/cache/tdnf

 

Yum リポジトリの参照設定はこうなっています。

root [ ~ ]# cat /etc/yum.repos.d/photon

photon-iso.repo      photon-updates.repo  photon.repo

root [ ~ ]# cat /etc/yum.repos.d/photon.repo

[photon]

name=VMware Photon Linux 1.0(x86_64)

baseurl=https://dl.bintray.com/vmware/photon_release_1.0_TP1_x86_64

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY

gpgcheck=0

enabled=1

skip_if_unavailable=True

root [ ~ ]# cat /etc/yum.repos.d/photon-updates.repo

[photon-updates]

name=VMware Photon Linux 1.0(x86_64)Updates

baseurl=https://dl.bintray.com/vmware/photon_updates_1.0_TP1_x86_64

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY

gpgcheck=0

enabled=1

skip_if_unavailable=True

root [ ~ ]# cat /etc/yum.repos.d/photon-iso.repo

[photon-iso]

name=VMWare Photon Linux 1.0(x86_64)

baseurl=file:///media/cdrom/usr/src/photon/RPMS

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY

gpgcheck=0

enabled=1

skip_if_unavailable=True


上記の photon~.repo ファイルに記載された URL からもわかりますが、

RPM は Bintray のサイトから個別ダウンロードすることもできます。

 

https://dl.bintray.com/vmware/photon_release_1.0_TP1_x86_64/

photon-rpm-01.png

 

tdnf での Yum リポジトリの一覧表示。

tdnf コマンドで Yum リポジトリを表示してみます。


Yum リポジトリとして ISO イメージも参照しているようなので、

あらかじめ「/media/cdrom」ディレクトリにマウントしておきます。

root [ ~ ]# mount /dev/cdrom /media/cdrom/

mount: /dev/sr0 is write-protected, mounting read-only

root [ ~ ]# ls /media/cdrom/

PHOTON_VMWARE_CD  boot  etc   home      lib    media  opt   root  sbin  sys  usr

bin               dev   fake  isolinux  lib64  mnt    proc  run   srv   tmp  var

 

ちなみに ISO の中には、このあたりに RPM ファイルがあります。

root [ ~ ]# ls /media/cdrom/usr/src/photon/RPMS/

noarch  repodata  x86_64

root [ ~ ]# ls /media/cdrom/usr/src/photon/RPMS/*/*.rpm | wc -l

427

 

tdnf コマンドで Yum リポジトリを表示してみました。

yum コマンドと同様に repolist で見ることができます。

root [ ~ ]# tdnf repolist

repo id             repo name                               status

photon-updates      VMware Photon Linux 1.0(x86_64)Updates  enabled

photon              VMware Photon Linux 1.0(x86_64)         enabled

photon-iso          VMWare Photon Linux 1.0(x86_64)         enabled

 

tdnf での RPM インストール。

ためしに、Micro インストールの Photon Linux に vim(vi)をインストールしてみます。

root [ ~ ]# tdnf list vim

vim.x86_64                                     7.4-1                      photon

vim.x86_64                                     7.4-1                  photon-iso

root [ ~ ]# tdnf install vim

Installing:

perl-DBI       x86_64  1.633-1

perl-DBIx-Simple       noarch  1.35-1

gdbm   x86_64  1.11-1

perl-DBD-SQLite        x86_64  1.46-1

grep   x86_64  2.21-1

tcsh   x86_64  6.18.01-1

perl   x86_64  5.18.2-1

gawk   x86_64  4.1.0-1

vim    x86_64  7.4-1

Is this ok [y/N]:y

Downloading 9662601.00 of 9662601.00

Downloading 688103.00 of 688103.00

Downloading 17945701.00 of 17945701.00

Downloading 262177.00 of 262177.00

Downloading 219679.00 of 219679.00

Downloading 2080877.00 of 2080877.00

Downloading 155696.00 of 155696.00

Downloading 37693.00 of 37693.00

Downloading 800209.00 of 800209.00

Testing transaction

Running transaction

root [ ~ ]#


これで vim がインストールされました。

root [ ~ ]# tdnf list vim

vim.x86_64                                     7.4-1                     @System

vim.x86_64                                     7.4-1                      photon

vim.x86_64                                     7.4-1                  photon-iso

root [ ~ ]# rpm -q vim

vim-7.4-1.x86_64

root [ ~ ]# vi --version | head -1

VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Apr 15 2015 20:19:49)

 

以上、Photon Linux の RPM パッケージ管理についてでした。

VMware Photon Linux は、コンテナむけの Linux OS で、

VMware vSphere 環境に最適化されているそうです。


VMware Photon

https://vmware.github.io/photon/


ためしにインストールしてみると、

VMware Tools も標準でインストールされます。

vSphere Web Client から、Minimal インストールした Photon Linux の VM を見てみても

VMware Tools がインストールされていることがわかります。

photon-linux-vmtools-01.png


今回の Photon Linux のバージョンは 1.1 TP1 です。

root [ ~ ]# cat /etc/photon-release

VMware Photon Linux 1.0 TP1


VMware Tools がインストールされていることがわかります。

root [ ~ ]# vmware-toolbox-cmd -v

9.10.0.43888 (build-2476743)


この Tools は、RPM でインストールされたものだとわかります。

Photon Linux にインストールされている VMware Tools は open-vm-tools でした。

最近では、VMware としては OS ベンダの同梱する open-vm-tools の使用を推奨しているようです。


open-vm-tools に対する VMware のサポートについて

http://kb.vmware.com/kb/2074713

 

root [ ~ ]# which vmware-toolbox-cmd

/usr/bin/vmware-toolbox-cmd

root [ ~ ]# rpm -qf /usr/bin/vmware-toolbox-cmd

open-vm-tools-9.10.0-1.x86_64

root [ ~ ]# rpm -qi open-vm-tools-9.10.0-1.x86_64

Name        : open-vm-tools

Version     : 9.10.0

Release     : 1

Architecture: x86_64

Install Date: Wed Apr 22 14:46:39 2015

Group       : Applications/System

Size        : 2220330

License     : LGPLv2+

Signature   : (none)

Source RPM  : open-vm-tools-9.10.0-1.src.rpm

Build Date  : Wed Apr 15 23:06:11 2015

Build Host  : discus-test

Relocations : (not relocatable)

Vendor      : VMware, Inc.

URL         : https://github.com/vmware/open-vm-tools/archive/stable-9.10.x.zip

Summary     : Usermode tools for VmWare virts

Description :

VmWare virtualization user mode tools

 

systemctl コマンドで、Tools のサービスが起動していることも確認できます。

root [ ~ ]# systemctl status vmtoolsd.service

photon-linux-vmtools-02.png

 

こんなイメージです。

ESXi ところは VMware Workstation でも、Player でも、Fusion でも・・・

photon-linux-vmtools-03.png

 

ちなみに、VMware Tools がデフォルトでインストールされるのは、Minimal インストール以上でした。

  • Photon OS (Micro)  → デフォルトではインストールされない。
  • Photon Container OS (Minimal)  → インストールされる。
  • Photon Full OS (All) → インストールされる。

 

以上、Photon Linux と VMware Tools についてでした。

さっそく、VMware Photon Linux 1.0 TP1を VM にインストールして

ためしに Docker コンテナを起動してみました。

 

今回の環境は、vSphere 5.5(vCenter 5.5 / ESXi 5.5)でインストールしています。

Photon Linux は vSphere に最適化されているといわれていますが、

実際は ESXi / VMware Workstation に限らずインストールすることができるはずです。

 

こちらもどうぞ(前回のポスト)

VMware Photon Linux が公開されました。

 

参考

Getting Started Using Project Photon on VMware vSphere 5.5 & 6.0

https://vmware.github.io/photon/assets/files/getting_started_with_photon_on_vsphere.pdf



Photon Linux のインストール


今回は、vSphere 5.5 を使用しているので

VM のゲスト OS 選択は「その他の 3.x Linux (64 ビット)」にしてあります。

photon-linux-all-01.png


参考にしたガイドには 2 vCPU が推奨とありますが、1 vCPU でもインストール可能です。

今回は、CPU / メモリ / ハードディスクのスペックはデフォルトのままにしてみました。

ディスクプロビジョニングは、容量節約のため Thin Provisioning にしています。

VM バージョンは 10 (vmx-10)です。

photon-linux-all-02.png


VM には、「設定の編集」画面で、事前にデータストアに配置しておいた

Photon の インストール ISO イメージを 仮想 CD /DVD ドライブに接続しています。

「パワーオン時に接続」にチェックを入れておくと、

VM 起動時に ISO イメージからインストーラを起動できます。

photon-linux-all-03.png


仮想 CD ドライブに ISO を接続した状態で、VM をパワーオンすると、

Photon インストーラが起動します。Enter キーで進めます。

※今回は VMware Remote Console(VMRC)を使用しています。

photon-linux-all-04.png

 

ライセンス同意の画面です。「Accept」で Enter キーを押すと進めます。

photon-linux-all-05.png


今回、VM に割り当てた仮想ディスクは 1本だけなので、そのまま「Enter」キーを押します。

photon-linux-all-06.png


仮想ディスク上のデータ削除について確認が表示されるので「Yes」。

この次の画面が表示されるまで、数秒まちます。

photon-linux-all-07.png

 

インストールオプションの選択画面です。

Photon Linux はインストール時に4つのオプションが選択できます。

デフォルトは「Photon OS (Micro)」ですが、

今回は「Photon Full OS (All)」を選択しています。

  • Photon OS (Micro)
  • Photon Container OS (Minimal)
  • Photon Full OS (All) ←今回はこれを選択。
  • Photon Custom OS

photon-linux-all-08.png

 

Linux に設定するホスト名を入力します。

photon-linux-all-09.png


root ユーザのパスワードを入力します。簡単すぎるパスワードだとエラーになります。

パスワードを入力して Enter を押すと・・・

photon-linux-all-10.png

 

そのままインストールが開始します。

photon-linux-all-11.png

 

環境に依存するものではありますが、

インストール処理にはあまり時間がかかりません。

インストールが終了すると、かかった時間が表示され

今回は 6分程度で終了しました。

※今回の画面には「Photon has been installed in 358 secs」とあります。

 

ここで何かキーをおすと、OS が再起動されます。

photon-linux-all-12.png


OS 起動時には Photon の画面が表示されますが、

すぐに CLI(bash)のログインプロンプトが表示されます。

インストール直後は root でログインできます。

※パスワードはインストーラで指定したものです。

 

ちなみに、SSH でログインする場合は、useradd と passwd コマンドなどで

root 以外のユーザを新規作成することになると思います。

 

画面は下記のような感じです。

photon-linux-all-14.png

 

 

今回の Photon Linux の環境

 

Photon Linux の Linux カーネルバージョンは 3.19.2 です。

Photon Linux のディストリビューションのバージョンは、/etc/lsb-release ファイルに記載されていて、

今回は「VMware Photon 1.0 TP1」です。

root [ ~ ]# uname -a

Linux photon01 3.19.2 #1-photon SMP Wed Apr 15 22:37:11 UTC 2015 x86_64 GNU/Linux

root [ ~ ]# cat /etc/lsb-release

DISTRIB_ID=VMware Photon

DISTRIB_RELEASE=1.0 TP1

DISTRIB_CODENAME=Photon

DISTRIB_DESCRIPTION=VMware Photon 1.0 TP1

 

ネットワークはデフォルトでは DHCP による自動設定で、

今回は vNIC が1つだけなので eth0 に外部からアクセスできる IP アドレスが設定されます。

ちなみに、キーボード設定は英語配列です。

 

「Photon Full OS (All)」 では、

Docker も 1.5 がインストールされています。

root [ ~ ]# rpm -q docker

docker-1.5.0-3.x86_64

 

あまりいい確認方法ではないかもしれませんが、

この Photon Linux は ESXi 上の VM で起動しています。

root [ ~ ]# dmesg | grep -i Hypervisor

[    0.000000] Hypervisor detected: VMware

[    0.000000] TSC freq read from hypervisor : 1696.074 MHz

[    0.692326] [drm] Max dedicated hypervisor surface memory is 163840 kiB

 

 

Docker でのコンテナ起動


Docker を有効化して、コンテナを起動してみます。

Photon Linux がインターネットにアクセスできる状態であれば、

デフォルトで Docker Hub からコンテナのイメージをダウンロードできる状態になっています。

ついでに、Docker のバージョンも表示しておきます。

root [ ~ ]# systemctl start docker

root [ ~ ]# systemctl enable docker

Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /lib/systemd/system/docker.service.

root [ ~ ]# docker version

Client version: 1.5.0

Client API version: 1.17

Go version (client): go1.4.1

Git commit (client): a8a31ef

OS/Arch (client): linux/amd64

Server version: 1.5.0

Server API version: 1.17

Go version (server): go1.4.1

Git commit (server): a8a31ef

 

Docker Hub から vmwarecna/nginx イメージをダウンロードして起動します。

名前の通り VMware Cloud Native Apps(多分)の オフィシャル Nginx イメージで、

起動すると Photon のスプラッシュスクリーンが表示されます。

 

ちなみに、レジストリのページはこれです。

https://registry.hub.docker.com/u/vmwarecna/nginx/

photon-linux-cna-nginx.png

 

下記のコマンドラインで、イメージのダウンロード~コンテナ起動されます。

今回は、Web ブラウザから TCP 8050 番ポートでアクセスできるようにコンテナを起動してみました。

root [ ~ ]# docker run -d -p 8050:80 vmwarecna/nginx

Unable to find image 'vmwarecna/nginx:latest' locally

Pulling repository vmwarecna/nginx

6d36a12c92d5: Download complete

511136ea3c5a: Download complete

e977d53b9210: Download complete

c9fa20ecce88: Download complete

184d60f5cc4f: Download complete

96d31e36bd8a: Download complete

fd2224b9a216: Download complete

7f3a2bd1e995: Download complete

4c4851e85e94: Download complete

560d74bc7ae1: Download complete

07f0aa77ae76: Download complete

126105e511b8: Download complete

775024331ffa: Download complete

db26ae25be15: Download complete

Status: Downloaded newer image for vmwarecna/nginx:latest

9d78b3e6786e888ae6a9859f2b053b963bb143bc2403b076c0216017ee19cbcf

 

ダウンロードして登録されたイメージはこれです。

root [ ~ ]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE

vmwarecna/nginx     latest              6d36a12c92d5        9 days ago          93.48 MB

 

そしてこのイメージからコンテナも起動されています。

root [ ~ ]# docker ps

CONTAINER ID        IMAGE                    COMMAND                CREATED             STATUS              PORTS                           NAMES

9d78b3e6786e        vmwarecna/nginx:latest   "nginx -g 'daemon of   7 seconds ago       Up 6 seconds        443/tcp, 0.0.0.0:8050->80/tcp   fervent_fermat

 

Web ブラウザから「 http: //<Photon Linux の IP アドレス>:8050/」 にアクセスすると

Nginx 上の Photon のページがみられます。

photon-linux-all-15.png

 

ちなみに当然ながら、Docker Hub などから他の Docker のイメージを入手して

コンテナを起動することができます。

 

たとえば、Doker Hub にある

Oracle Linux 6 のイメージをダウンロード~コンテナ起動してみました。

https://registry.hub.docker.com/u/oracle/oraclelinux/

root [ ~ ]# docker run -it oracle/oraclelinux:6 /bin/bash

Unable to find image 'oracle/oraclelinux:6' locally

Pulling repository oracle/oraclelinux

8dee47b714f6: Download complete

51407df89f64: Download complete

bb12766ba279: Download complete

Status: Downloaded newer image for oracle/oraclelinux:6

[root@92a13df410ee /]#  ★ここから、起動したコンテナの中に入っている。

[root@92a13df410ee /]# cat /etc/oracle-release

Oracle Linux Server release 6.6

[root@92a13df410ee /]# uname -a  ★コンテナのカーネルは Photon のものになっている。

Linux 92a13df410ee 3.19.2 #1-photon SMP Wed Apr 15 22:37:11 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

[root@92a13df410ee /]#

[root@92a13df410ee /]# root [ ~ ]#  ★ここで「Ctrl + p + q」キーでコンテナから抜けた。

root [ ~ ]# docker ps  ★起動中コンテナが増えている。

CONTAINER ID        IMAGE                    COMMAND                CREATED             STATUS              PORTS                           NAMES

92a13df410ee        oracle/oraclelinux:6     "/bin/bash"            36 seconds ago      Up 35 seconds                                       prickly_goodall

9d78b3e6786e        vmwarecna/nginx:latest   "nginx -g 'daemon of   22 minutes ago      Up 22 minutes       443/tcp, 0.0.0.0:8050->80/tcp   fervent_fermat

root [ ~ ]#

 

上記のように、Photon Linux 上で Oracle Linux 6 のイメージを起動できました。

この調子で Red Hat Linux や Cent OS のコンテナもいけるはず・・・

 

以上、Photon Linux のインストールとコンテナ起動でした。

VMware から、Docker などコンテナむけの Linux ディストリビューション

Photon Linux が公開されました。

ロゴもフォトンっぽいかんじです。

おなじ目的の OS としては、CoreOS や Red Hat Atmic Host あたりが挙げられます。


すでに、下記のサイトあたりから Photon Linux の ISO インストーラファイルがダウンロードできます。


VMware Photon

https://vmware.github.io/photon/

ちなみに インストーラの ISO は 1GB くらいです。

photon-pj-01.png

 

また、GitHub からソースをダウンロードして、自分で ISO をビルドできるようになっています。

ちなみに、ビルド環境は Ubuntu を想定しているようです。


GitHub

https://github.com/vmware/photon/

 

 

そして、VMTN (VMware Community)にも、すでにコミュニティのページが用意されていました。


Project Photon (英語)

https://communities.vmware.com/community/vmtn/devops/project-photon

この Project の目的もあってか、ページの位置づけは「DevOps」カテゴリ配下になっています。

photon-pj-02.png

 

プロダクトの位置づけは Technical Preview なので、製品サポートがあったりするわけではありませんが、

その分 Community 向けなプロダクトな気がしていて、面白そうだと思っています。

 

起動直後の画面にも「Technical Preview」と表示されてます。

photon-pj-03.png

 

せっかく VMware から Linux ディストリビューションが出たので、

普段は執拗に Oracle Linux を使用している このブログでも Photon を使ってみたいと思います。

 

以上、Photon Linux 登場についてでした。