Skip navigation

Photon Linux の Docker は、RPM で導入されます。

そして、Photon Linux は、RPM を yum のかわりに tdnf で管理できます。

Photon Linux の RPM パッケージ管理。(yum / tdnf)

 

そこで、tdnf コマンドで docker をアップデートしてみました。

 

VMware Photon Linux 1.0 TP1 は、デフォルトだと Docker 1.5 です。

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

VMware Photon Linux 1.0 TP1

root [ ~ ]# docker -v

Docker version 1.5.0, build a8a31ef

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

 

tdnf コマンドで RPM をダウンロードするリポジトリの設定は、

下記のようにしています。

※設定方法は Yum と同じです。(Yum リポジトリを参照します。)

root [ ~ ]# cat /etc/yum.repos.d/*.repo | grep -E "^\[|baseurl|enable"

[lightwave]

baseurl=https://dl.bintray.com/vmware/lightwave

enabled=0

[photon-extras]

baseurl=https://dl.bintray.com/vmware/photon_extras

enabled=1

[photon-iso]

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

enabled=1

[photon-updates]

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

enabled=1

[photon]

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

enabled=1

 

Docker のアップデートがあるか見てみます。

現状でインストールされているのは、docker 1.5.0-3 @System)で、

リポジトリにある現時点での最新版は、photon-extras にある docker 1.7.0-1 でした。

root [ ~ ]# tdnf list docker

docker.x86_64                                1.5.0-3                     @System

docker.x86_64                                1.5.0-3                  photon-iso

docker.x86_64                                1.6.0-2              photon-updates

docker.x86_64                                1.7.0-1               photon-extras

docker.x86_64                                1.5.0-3                      photon

 

Docker をアップデートします。

root [ ~ ]# tdnf update docker

Upgrading:

docker x86_64  1.7.0-1

Is this ok [y/N]:y

Downloading 4450014.00 of 4450014.00

Testing transaction

Running transaction

 

Docker のバージョンを確認してみます。

RPM のアップデート直後で、まだ Docker サービスを再起動していないため

Client と Server でバージョンが違うとエラーが表示されます。

※Docker のバージョン 1.5 / 1.7 とは違う部分でのバージョン番号についてのエラー表示のようです。

root [ ~ ]# docker -v

Docker version 1.7.0, build 0baf609

root [ ~ ]# docker version

Client version: 1.7.0

Client API version: 1.19

Go version (client): go1.4.2

Git commit (client): 0baf609

OS/Arch (client): linux/amd64

Error response from daemon: client and server don't have same version (client : 1.19, server: 1.17)

 

Systemd で管理されている Docker サービスを再起動します。

Systemd の Unit ファイルも更新されているようで、

systemctl daemon-reload を実行しておきます。

root [ ~ ]# systemctl restart docker

Warning: Unit file of docker.service changed on disk, 'systemctl daemon-reload' recommended.

 

Docker サービスの再起動

root [ ~ ]# systemctl daemon-reload

root [ ~ ]# systemctl restart docker

 

バージョン確認でも、エラー表示がなくなりました。

root [ ~ ]# docker version

Client version: 1.7.0

Client API version: 1.19

Go version (client): go1.4.2

Git commit (client): 0baf609

OS/Arch (client): linux/amd64

Server version: 1.7.0

Server API version: 1.19

Go version (server): go1.4.2

Git commit (server): 0baf609

OS/Arch (server): linux/amd64

 

以上、Photon の Docker をアップデートする話でした。