前回、Docker Registryをローカル環境に構築しましたが、このままではdockerコマンドのオプションの指定が煩雑です。
第一、覚えられない。 🙁
そこで、docker-compose.ymlで起動できるように以下のようなdocker-compose.ymlを書きました。
■docker-compose.yml
registry: image: registry:2.6 ports: - "5000:5000" environment: REGISTRY_HTTP_TLS_CERTIFICATE: /certs/domain.crt REGISTRY_HTTP_TLS_KEY: /certs/domain.key volumes: - ./registry_certs:/certs - ./registry:/var/lib/registry restart: always
ディレクトリ構造は以下のようになっています。
. ├── docker-compose.yml ├── registry (イメージを格納するディレクトリ) └── registry_certs (自己署名証明書/秘密鍵を格納するディレクトリ) ├── domain.crt (自己署名証明書) └── domain.key (秘密鍵)
前回はrootで作業したので、そのときに作成したdomain.crtとdomain.keyを一般ユーザーのディレクトリにコピーしておきます。
この状態でdoker-composeコマンドを実行すると、
$ docker-compose up -d
Docker Registryが起動しました。