Docker: /etc/default/docker の DOCKER_OPTS パラメータを変更しても反映されない

Docker: /etc/default/docker の DOCKER_OPTS パラメータを変更しても反映されない

デフォルトでは、 /etc/default/docker 設定は有効になりません。docker 環境設定に手動で追加する必要があります。設定するファイルは/usr/lib/systemd/system/docker.serviceです。EnvironmentFile EnvironmentFile=-/etc/default/dockerを追加する必要があります。次に、ExecStart 設定で、参照されるパラメーター$DOCKER_OPTSを追加します。ブリッジの設定時に、 /etc/default/dockerに DOCKER_OPTS パラメータを追加したのですが、DOCKER_OPTS パラメータが反映されませんでした。ネット上のチュートリアルがひどすぎました。古いバージョンの Docker を使用していて環境が違っていたからかもしれません。修正した後、全く反映されませんでした。その時はとても焦りました。

docker.サービス

docker.service を構成する場合、EnvironmentFile ファイルはデフォルトで/etc/sysconfig/docker (基本構成)、 /etc/sysconfig/docker-storage storage (ストレージ)、および/etc/sysconfig/docker-network (ネットワーク) で構成されます。/etc/default/docker /etc/default/docker有効にするには、 EnvironmentFile=-/etc/default/dockerを追加し、参照されるパラメータ$DOCKER_OPTS ExecStart 構成に追加する必要があります。以下は、私の構成ファイル/usr/lib/systemd/system/docker.serviceです。

#設定ファイルを変更する vi /usr/lib/systemd/system/docker.service
[ユニット]
説明=Docker アプリケーション コンテナ エンジン
ドキュメント=http://docs.docker.com
後=ネットワーク.ターゲット
欲しいもの=docker-storage-setup.service
必要条件=docker-cleanup.timer

[サービス]
タイプ=通知
通知アクセス=すべて
キルモード=プロセス
#カスタム設定ファイルを追加します EnvironmentFile=-/etc/default/docker #設定ファイルを追加します (- はエラーを無視することを意味します)
環境ファイル=-/etc/sysconfig/docker
環境ファイル=-/etc/sysconfig/docker-storage
環境ファイル=-/etc/sysconfig/docker-network
環境=GOTRACEBACK=クラッシュ
環境=DOCKER_HTTP_HOST_COMPAT=1
環境=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin
ExecStart=/usr/bin/dockerd-current \
     --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
     --default-runtime=docker-runc \
     --exec-opt native.cgroupdriver=systemd \
     --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
     $オプション\
     $DOCKER_STORAGE_OPTIONS \
     $DOCKER_NETWORK_OPTIONS \
     $ADD_REGISTRY \
     $ブロックレジストリ\
     $INSECURE_REGISTRY \
     $DOCKER_OPTS #参照する必要があるパラメータ。ネットワークカードの設定パラメータでもある ExecReload=/bin/kill -s HUP $MAINPID
制限NOFILE=1048576
制限NPROC=1048576
LimitCORE=無限大
タイムアウト開始秒数=0
再起動=異常時
マウントフラグ=スレーブ

[インストール]
WantedBy=マルチユーザー.ターゲット
環境ファイル=-/etc/default/docker

変更後、/etc/default/dockerで定義されたDOCKER_OPTSパラメータを使用するには、サービスをリロードして再起動する必要があります。

#リロード systemctl daemon-reload
#dockerサービスを再起動します service docker restart 

這里寫圖片描述

Docker環境設定ファイル

: : ルートディレクトリの/etc/sysconfig/docker
DOCKER_OPTS="-b=br0"

#またはデータを直接書き込む echo 'DOCKER_OPTS="-b=br0"' >> /etc/default/docker

Dockerカスタムブリッジ

#ブリッジツールをインストールします yum install bridge-utils 

#ブリッジを追加する brctl addbr br0

# ブリッジを表示する brctl show 

#ブリッジアドレスとサブネットマスクを設定します ifconfig br0 192.168.110.1 netmask 255.255.255.0

#ブリッジを設定する echo 'DOCKER_OPTS="-b=br0"' >> /etc/default/docker

#Docker の設定
: : vi /usr/lib/systemd/system/docker.service を実行します。
#独自の設定ファイルを追加します EnvironmentFile=-/etc/sysconfig/docker
#アプリケーションパラメータ ExecStart=/usr/bin/dockerd-current \
        --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
        --default-runtime=docker-runc \
        --exec-opt native.cgroupdriver=systemd \
        --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
        $オプション\
        $DOCKER_STORAGE_OPTIONS \
        $DOCKER_NETWORK_OPTIONS \
        $ADD_REGISTRY \
        $ブロックレジストリ\
        $INSECURE_REGISTRY \
        $DOCKER_OPTS #ブリッジパラメータを追加 #リロード systemctl daemon-reload
#dockerサービスを再起動します service docker restart

変更成功後のブリッジ情報

這里寫圖片描述

ブリッジデータを表示

這里寫圖片描述

ブリッジが正常に変更されると、ネットワークカードのネットワークセグメントとサブネットマスクが変更されます。

這里寫圖片描述

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Dockerコンテナ内の設定ファイルの変更の実装
  • DockerコンテナのIPアドレスを表示する方法
  • Linux サーバー上で Docker を使用して .net Core プロジェクトを展開するプロセス全体
  • Docker での RocketMQ の詳細なインストールと使用
  • Docker プライベートリポジトリの管理とローカルリポジトリ内のイメージの削除
  • Dockerイメージをプライベートリポジトリにアップロードする方法の例
  • dockerコンテナがIP経由でホストマシンにアクセスできない問題を解決する方法の詳細な説明
  • Dockerでパラメータ変数を外部から指定する方法

<<:  同じページを動的にロードするための Vue ルーティングリスニングの例

>>:  MySQL の frm ファイルからテーブル構造を復元する 3 つの方法 [推奨]

推薦する

シンプルなショッピングカート機能を実現するjs

この記事の例では、簡単なショッピングカート機能を実現するためのjsの具体的なコードを参考までに共有し...

h5入力ボックスプロンプト+通常のテキストボックスプロンプトを実装する方法

XML/HTML コードコンテンツをクリップボードにコピー<入力 id = "ユーザ...

Vue.jsは画像切り替え機能を実装する

この記事では、画像切り替え機能を実装するためのVue.jsの具体的なコードを参考までに共有します。具...

mysqlのkey_lenの計算方法についての簡単な説明

MySQL の explain コマンドは SQL のパフォーマンスを分析できます。その 1 つが ...

HTML タグ マーキーを使用してスクロール効果を実現する簡単な方法 (必読)

ページの自動スクロール効果は JavaScript で実現できますが、今日偶然、JS 制御なしでさま...

CentOS での mysql5.7 の詳細なインストールと設定のチュートリアル

インストールユーザーにインストール権限があることを確認してくださいルートスイッチなしsuルート(su...

Nest.js パラメータ検証とカスタム戻りデータ形式の詳細な説明

0x0 パラメータ検証Nest.jsでは、パラメータ検証業務のほとんどをパイプライン方式で実装してい...

UniappはBaidu Voiceを使用して録音をテキストに変換する機能を実現

3日間さまざまな困難に遭遇した後、ようやくこの機能を実現しました。正常に実装できる方法を見つける前に...

MySQL/MariaDB ルートパスワードリセットチュートリアル

序文パスワードを忘れることは、よく遭遇する問題です。MySQL または MariaDB データベース...

CSSスタイルシートとフォーマットレイアウトの詳細な説明

スタイルシートCSS (カスケーディング スタイル シート) は、HTML Web ページを美しくす...

Vue3 でマークダウン エディター コンポーネントを使用する方法

目次インストールコンポーネントのインポート基本的な使い方保存したマークダウンまたは HTML テキス...

WeChatアプレットでQRコードを識別するために長押しする実装プロセス

序文公式アカウントのQRコードは長押しで認識できることは皆さんご存じですが、ミニプログラムに対する制...

Vue+SSMは画像アップロードのプレビュー効果を実現します

現在の要件は、ファイルのアップロード ボタンがあることです。ボタンをクリックすると、アップロードする...