Небольшая путаница с 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
- это внутренний файл схемы, используемый для проверки, вы, вероятно, не захотите его изменять.
C:\ProgramData\Docker\config\daemon.json
для контейнеров Windows, это расположение по умолчанию в коде демона Windows.
C:\Users\<username>\.docker\daemon.json
предназначен для контейнеров linux, это собственное расположение по умолчанию для Hyper-v/wls2/linux.
Эти 2 файла создаются при первом запуске соответствующего демона.
Только:
- Нажмите WinKey+R
- Тип:
%userprofile%\.docker\
- НажиматьEnter