最近、CTFd プラットフォームを構築した後、Docker を使用して動的なフラグの練習場を作成する必要がありましたので、別のローカルマシンを立ち上げて、Docker プライベートリポジトリにしました。その過程を記録します。
リポジトリの作成とイメージのプッシュ#
プライベートリポジトリを作成するには、docker registryツールが必要です。公式の registry イメージを取得します。
- -v オプションは、リポジトリのローカル保存場所を指定します。

上記の 2 つのコマンドで、プライベートリポジトリが作成されました。これでイメージをプライベートリポジトリにアップロードし、プライベートリポジトリからイメージをプル、検索、アップロードすることができます。
まず、hub.docker にアップロード済みのイメージをプルします。

プルしたイメージに新しいタグを付けます。

イメージをプライベートリポジトリにプッシュします。

プライベートリポジトリの registry には、先ほどプッシュしたイメージが表示されます。

http://127.0.0.1:5000/v2/_catalogにアクセスしても表示されます。

プライベートイメージをアップロードした後、ローカルからイメージをプルすることができます。
- リポジトリアドレスを内部ネットワークアドレスに設定する
🫥:クライアントの設定ファイル、つまり自分のホスト(コンピュータ)の設定ファイルを変更する必要があります。ここで私はハマりました。
Linux システムの場合、/etc/docker/daemon.json に以下の内容を追加します。
Windows と Mac の場合は、Docker Engine に上記の設定を追加します(ここでの IP は異なります)。

Docker commit でイメージをコミット#
既存のイメージを変更した後、リポジトリにイメージをコミットしたい場合は、docker commit を使用してイメージをコミットします。docker commit は、元のイメージに新しいレイヤーを追加します。
まず、タグを作成します。
その後、プッシュします。
参考#
mac 搭建 docker 私有仓库
docker 镜像的发布
https://blog.csdn.net/atzqtzq/article/details/115701143
画像はこちらから取得しました:https://wallhaven.cc/w/5g56p1