Dockerに証明書を追加する方法

Dockerに証明書を追加する方法

1. アップグレードプロセス: sudo apt-get update

パッケージが見つからない、パッケージのバージョンが古いなどの問題は、この方法で解決できます。解決できない場合は、認証が欠落しているため、独自の認証証明書を生成する必要があります。

2. 独自の認証証明書を生成する

まずフォルダを作成する

mkdir -p 証明書

その後、証明書を作成します。証明書は、作成したフォルダーに生成されます。

openssl req -newkey rsa:4096 -nodes -sha256 -keyout /root/certs/domain.key -x509 -days 365 -out /root/certs/domain.crt

次に、certsによって生成された証明書を/etc/docker/ディレクトリに配置します。

次にdockerサービスを再起動します。sudo service docker restart

再起動後

補足: Docker でインストールされた nginx を使用して HTTPS 証明書を構成する

新しいssl.confを作成し、conf.dフォルダにファイルを置きます。

サーバー{
  聞く 443;
  server_name ローカルホスト;
  sslオン;
  ルートhtml;
  インデックス index.html index.htm;
  ssl_証明書 cert/1533224843981.pem;
  ssl_certificate_key cert/1533224843981.key;
  ssl_session_timeout 5分;
  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
  ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2;
  ssl_prefer_server_ciphers をオン;
  位置 / {
   ルートhtml;
   インデックス index.html index.htm;
  }
 }

注意: cert は相対パスです。Linux フォルダーの場合は、nginx.conf フォルダー内にあります。Windows フォルダーの場合は、conf フォルダー内にあります。

走る

 docker run --name mynginx -p 443:443 -v /opt/data/nginx/nginx.conf:/etc/nginx/nginx.conf
 -v /opt/data/nginx/conf.d:/etc/nginx/conf.d/default.conf 
-v /opt/data/nginx/www:/www -v /opt/data/nginx/cert:/etc/nginx/cert 
-v /opt/data/nginx/ssl.conf:/etc/nginx/conf.d/ssl.conf -d nginx

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。

以下もご興味があるかもしれません:
  • Docker で Let's Encrypt から永久無料 SSL 証明書を取得する方法
  • ルート権限なしでログインするためのDockerソリューション
  • Dockerでmysqlのルートパスワードを変更する方法
  • Docker を使用してコンテナ内のルート パスワードを変更する方法
  • Dockerコンテナでルート権限を取得する方法
  • docker cp ファイルをコピーしてコンテナに入る
  • Dockerはコンテナに入るためにルートを使用する
  • Dockerコンテナにホストディレクトリへの書き込み権限がない場合の解決策

<<:  CSS でベジェ曲線の実装を反転する方法

>>:  ウェブデザインスキル:中国語と英語が混在するウェブページの上位表示の問題

推薦する

Webpack でよく使われる 12 個の Loader を共有する (要約)

目次序文スタイルローダーCSSローダーsassローダーpostcssローダーバベルローダーtsローダ...

Remレイアウトを使用して適応性を実現する

以前、モバイル適応に関する記事を書きました。非常に長く、内容が多すぎて読みづらいものでした。そこで、...

web.config (IIS) および .htaccess (Apache) の構成

xml <?xml バージョン="1.0" エンコーディング="...

DockerコンテナでJupyterノートブックを設定する方法

Jupyter ノートブックは、主に Python コードの記述、より具体的にはディープラーニング開...

Mysql で自動増分主キー ID を更新するときに問題が発生しました

目次自動インクリメント ID を更新する理由は何ですか?質問解決方法これは私が知っている問題ですが、...

クラウド サーバー Ubuntu_Server_16.04.1 に MySQL をインストールしてリモート接続を有効にする方法

1. MySQLをインストールします。対応するソフトウェアをインストールするには、次の 3 つのコマ...

VueはExcelデータをエクスポートするパブリック関数メソッドをカプセル化します

vue+element UI は Excel データをエクスポートするためのパブリック関数をカプセル...

本をめくる効果を実現するネイティブJS

この記事では、ネイティブ JS で実装された本をめくる効果の図を紹介します。効果は次のとおりです。 ...

Vue はアップロードした画像に透かしを追加できるようになりました (アップグレード版)

vueプロジェクトでは、アップロードした画像に透かしを追加して参照できるようにするアップグレード版...

ルート変更を監視するJavaScriptの詳細な説明

目次歴史pushState() メソッドpushState() の使用シナリオreplaceStat...

Vueバックグラウンド管理に多言語機能を追加する例

目次1.まず、main.jsページを設定します2. 対応するパスの下で言語パックを構成します。ここに...

CSS セレクターの重みの理解(個人テスト)

コードをコピーコードは次のとおりです。 <スタイル タイプ="text/css&qu...

Linuxサーバーのディスク容量を拡張する方法

目次序文ステップ序文今日、es ログが記録されていないことに気付きました。filebeat、elas...

Windows Server 2012 リモート デスクトップ ライセンス サーバーがライセンスを提供できず、リモート セッションが切断される

本日、会社の内部サーバーにログインしたところ、リモートアクセスができませんでした。エラー メッセージ...