Небольшая путаница с daemon.json рабочего стола docker

Мне нужно отредактировать конфигурацию моего демона докеров, и из того, что я читал, есть 2(?), Которые я могу использовать?

Один путь:

C:\ProgramData\Docker\config\daemon.json

Другой путь:

C:\Program Files\Docker\Docker\resources\windows-daemon-options.json

Первый вопрос:

  • В windows-daemon-options.jsonуже существует и содержит данные (подробнее об этом ниже)
  • В daemon.jsonне существует; Мне придется создать это

Итак, я просто отредактирую windows-daemon-options.json, или я создаю daemon.json, и либо просто делаю в моих правках, а затем при запуске демона он как бы использует первый в качестве "базовой" конфигурации и перезаписывает только настройки, добавленные вторым? ИЛИ я скопирую / вставлю ВСЕ настройки из первого во второй, отредактирую то, что мне нужно, а затем при запуске он будет использовать обычныйdaemon.json в качестве предпочтительной конфигурации (вроде как если бы первая была образцом конфигурации)?

Второй вопрос:

Данные в windows-daemon-options.json в нем много "отредактированного", мне интересно, как это все фигурирует во всем этом?

т.е. вот данные в нем (буквально):

{
    "allow-nondistributable-artifacts": ["host_port_or_cidr|redacted"],
    "authorization-plugins": [],
    "bridge": "",
    "cluster-advertise": "",
    "cluster-store": "",
    "data-root": "path|redacted",
    "debug": true,
    "default-ulimits": {},
    "disable-legacy-registry": false,
    "dns": ["ip|redacted"],
    "dns-opts": [],
    "dns-search": ["domain|redacted"],
    "exec-opts": [],
    "experimental": true,
    "fixed-cidr": "redacted",
    "graph": "deprecated|redacted",
    "group": "",
    "hosts": ["endpoint|redacted"],
    "insecure-registries": ["host_port_or_cidr|redacted"],
    "labels": [],
    "live-restore": true,
    "log-driver": "",
    "log-level": "",
    "max-concurrent-downloads": 3,
    "max-concurrent-uploads": 5,
    "metrics-addr":"endpoint|redacted",
    "mtu": 0,
    "pidfile": "redacted",
    "raw-logs": false,
    "registry-mirrors": ["registry|redacted"],
    "shutdown-timeout": 15,
    "storage-driver": "",
    "storage-opts": [],
    "swarm-default-advertise-addr": "endpoint|redacted",
    "tlscacert": "redacted",
    "tlscert": "redacted",
    "tlskey": "redacted",
    "tlsverify": true
}

Надеюсь, мне удалось четко передать свои вопросы.

3 ответа

Решение

При запуске Docker Desktop в режиме контейнера Windows, если C:\ProgramData\Docker\config\daemon.jsonне существует, он будет создан с некоторыми значениями по умолчанию. Вы можете создать его заранее или отредактировать позже (и перезапустить Docker Desktop).

Или вы можете использовать пользовательский интерфейс (Настройки / Docker Engine), который проверяет изменения.C:\Program Files\Docker\Docker\resources\windows-daemon-options.json - это внутренний файл схемы, используемый для проверки, вы, вероятно, не захотите его изменять.

См. Также https://docs.docker.com/docker-for-windows/

C:\ProgramData\Docker\config\daemon.json для контейнеров Windows, это расположение по умолчанию в коде демона Windows.

C:\Users\<username>\.docker\daemon.json предназначен для контейнеров linux, это собственное расположение по умолчанию для Hyper-v/wls2/linux.

Эти 2 файла создаются при первом запуске соответствующего демона.

Только:

  1. Нажмите WinKey+R
  2. Тип:%userprofile%\.docker\
  3. НажиматьEnter
Другие вопросы по тегам