codingecho

日々の体験などを書いてます

HTTPを使ったDocker Registryを作る

基本的にドキュメントに書いてありまが、Docker RegistryでHTTPを使おうとすると少し面倒だったので、まとめておきます。

プライベートなネットワークで使っているぶんにはHTTPで十分ですが、いくつか設定を追加する必要があります。

Docker Registryを起動する

Docker Registryを起動すにはDeploy a registry serverに書かれている通り、以下のコマンドを実行します。 Docker Registryはこれで終わりです。

$ docker run -d -p 5000:5000 --restart=always --name registry registry:2

Docker Registryに接続するクライアントの設定

こちらに書かれている通り以下のようにDockerの設定を追加します。

Docker Registry が10.0.0.2:5000でLISTENしている例です。

/etc/docker/daemon.json

{ "insecure-registries":["10.0.0.2:5000"] }

/etc/default/docker

DOCKER_OPTS="--insecure-registry 10.0.0.2:5000"

設定はこの2つです。

あとはDocker daemonをrestartします。

# systemdの場合
$ sudo systemctl restart docker.service

これでHTTPで接続できるようになります。

設定は簡単ですが、公式ドキュメントから設定方法を見つけられなかったので、設定に少し時間がかかりました。