Linux サーバー上に安全で信頼性の高い Docker イメージ ウェアハウスを構築するにはどうすればよいですか?

王林
リリース: 2023-07-28 20:16:51
オリジナル
1591 人が閲覧しました

Linux サーバー上に安全で信頼性の高い Docker イメージ ウェアハウスを確立するにはどうすればよいですか?

コンテナ テクノロジーの急速な発展により、Docker はコンテナ化されたアプリケーションを構築および管理するための一般的なツールになりました。ただし、実際のアプリケーションでは、安全で信頼性の高い Docker イメージ ウェアハウスをどのように確立するかが重要な問題になります。この記事では、Linux サーバー上に安全で信頼性の高い Docker イメージ ウェアハウスを確立する方法を紹介し、参考となるコード例を示します。

  1. Docker のインストール

まず、Linux サーバーに Docker をインストールする必要があります。次のコマンドを使用してインストールできます:

$ sudo apt-get update
$ sudo apt-get install docker-ce
ログイン後にコピー

インストールが完了したら、次のコマンドを実行してインストールが成功したかどうかを確認します:

$ docker version
ログイン後にコピー
  1. Docker イメージ ウェアハウスを構成する
#次に、Docker イメージ ウェアハウスを構成する必要があります。 Docker の公式レジストリ イメージを使用するか、Harbor、Nexus などのサードパーティのオープン ソース イメージを使用するかを選択できます。

Docker の公式レジストリ イメージを例に挙げると、次のコマンドでレジストリ コンテナを起動できます。

$ docker run -d -p 5000:5000 --name registry registry:latest
ログイン後にコピー

起動が完了したら、レジストリが正しく動作しているかどうかを確認できます。次のコマンド:

$ curl http://localhost:5000/v2/_catalog
ログイン後にコピー

空の配列

[] が返された場合、レジストリが正常に実行されたことを意味します。

    イメージ ウェアハウスの認証と認可の設定
イメージ ウェアハウスのセキュリティを確保するには、認証と認可機能を追加する必要があります。 Nginx をリバース プロキシ サーバーとして使用し、Basic Auth 認証方法を使用できます。

まず、Nginx をインストールします:

$ sudo apt-get install nginx
ログイン後にコピー

次に、認証情報を保存するパスワード ファイルを作成します:

$ sudo sh -c "echo -n 'admin:' >> /etc/nginx/.htpasswd"
$ sudo sh -c "openssl passwd -apr1 >> /etc/nginx/.htpasswd"
ログイン後にコピー

作成が完了したら、Nginx 構成ファイルを編集する必要があります

/etc/nginx/sites-available/default に、次の内容を追加します。

server {
    listen 80;
    server_name <your-domain-name>;

    location / {
        proxy_pass http://localhost:5000;

        auth_basic "Restricted";
        auth_basic_user_file /etc/nginx/.htpasswd;
    }
}
ログイン後にコピー

をドメイン名に置き換えます。

設定ファイルを保存して Nginx を再起動します:

$ sudo systemctl restart nginx
ログイン後にコピー
ログイン後にコピー

    HTTPS サポートの設定
通信のセキュリティを確保するために、HTTPS を使用できます。通信用のプロトコル。まず、イメージ ウェアハウスの自己署名証明書を生成する必要があります。

まず、OpenSSL をインストールします:

$ sudo apt-get install openssl
ログイン後にコピー

次に、秘密キーと自己署名証明書を生成します:

$ sudo openssl req -newkey rsa:2048 -nodes -keyout registry.key -x509 -days 365 -out registry.crt
ログイン後にコピー

生成された

registry.key は秘密キー ファイル registry.crt は自己署名証明書ファイルです。

次に、Nginx 構成ファイル

/etc/nginx/sites-available/default を編集し、次の内容を追加します。

server {
    listen 443 ssl;
    server_name <your-domain-name>;

    ssl_certificate /path/to/registry.crt;
    ssl_certificate_key /path/to/registry.key;

    location / {
        proxy_pass http://localhost:5000;

        auth_basic "Restricted";
        auth_basic_user_file /etc/nginx/.htpasswd;
    }
}
ログイン後にコピー

Replace

はドメイン名です。

設定ファイルを保存し、Nginx を再起動します。

$ sudo systemctl restart nginx
ログイン後にコピー
ログイン後にコピー

    Docker クライアントを使用してイメージ ウェアハウスと対話します
最後に、Docker クライアントを使用して、画像ウェアハウスと対話します。まず、Docker 用に信頼できるウェアハウスを構成する必要があります。

$ sudo vi /etc/docker/daemon.json
ログイン後にコピー

次の内容を構成ファイルに追加します。

{
    "insecure-registries": ["<your-domain-name>:5000"]
}
ログイン後にコピー

構成ファイルを保存し、Docker サービスを再起動します。

$ sudo systemctl restart docker
ログイン後にコピー

これで使用できるようになります。Docker クライアントは、イメージのプッシュやプルなど、イメージ ウェアハウスと対話します。

$ docker tag image <your-domain-name>:5000/image
$ docker push <your-domain-name>:5000/image
$ docker pull <your-domain-name>:5000/image
ログイン後にコピー
上記は、安全で信頼性の高い Docker イメージ ウェアハウスを確立するためのすべての手順とコード例です。 Linuxサーバー。これらの手順に従うことで、安全で信頼性の高い Docker イメージ ウェアハウスを構築し、コンテナ化されたアプリケーションの信頼性とセキュリティを確保できます。

以上がLinux サーバー上に安全で信頼性の高い Docker イメージ ウェアハウスを構築するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!