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 つの方法 [推奨]

推薦する

MySQL でのテーブルの作成と削除の詳細な例

テーブル作成コマンドには以下が必要です。 テーブルの名前フィールド名各フィールドを定義します(タイ...

Windows 10 の Docker で countly-server を展開して実行するプロセス

私は最近countlyに触れて、慣れてきました。私は、必要に応じてcountlyのクラッシュプラグイ...

MySQLデータストレージプロセスパラメータの詳細な例

MySQL ストアド プロシージャ パラメータには、in、out、inout の 3 種類があります...

登録フォームのデザインルール

随分前に「Patterns for Sign Up & Ramp Up」を読み終えました。今...

Firefox ブラウザでバックグラウンド ミュージックを再生するための究極のソリューション (Chrome マルチブラウザ対応)

FirefoxでBGMを再生するための推奨コードがテストに合格しました空のコントロールパネルを開いて...

フロントエンドの面接の質問の最も包括的なコレクション

HTML+CSS 1. WEB 標準と W3C の理解と知識<br /> タグを閉じ、小...

優れた登録プロセスの手順

ウェブサイトにとって、これは最も基本的な機能です。それでは、登録プロセスに含まれる手順を見てみましょ...

Postman に基づく HTTP インターフェース テスト プロセスの分析

偶然、素晴らしい人工知能のチュートリアルを発見したので、みんなと共有せずにはいられませんでした。この...

JavaScript クリップボードの使用法の詳細な説明

(1)はじめに: clipboard.js は、テキストをクリップボードにコピーする機能を実装する軽...

VMware Workstation Pro でサーバー仮想マシンを構築する (グラフィック チュートリアル)

私が使用している VMware Workstation Pro のバージョンは次のとおりです。 1....

Navicat Premium15 でクラウド サーバーに接続する際のデータベースの問題と落とし穴

クラウドサーバーを使用するとデータベースに接続できる場合もありますが、Navicat Premium...

Vue でコミュニケーションを実装する 8 つの方法

目次1. コンポーネント通信1. Props 親コンポーネント ---> 子コンポーネント通信...

仮想マシンに Linux rhel7.3 オペレーティング システムをインストールする (具体的な手順)

仮想化ソフトウェアをインストールする仮想マシンにオペレーティング システムをインストールする前に、ホ...

Vueは単一ファイルコンポーネントの完全なプロセス記録を実装します

目次序文単一ファイルコンポーネント基本概念シンプルなローダーコンポーネントコンテンツの解析コンポーネ...

Linux コマンドを素早く習得する 4 つの方法

Linux マスターになりたいなら、いくつかの Linux コマンドを習得することが不可欠です。 L...