Как включить демон Experimental Docker в конвейерах Azure на размещенном агенте Ubuntu - PullRequest
0 голосов
/ 26 сентября 2018

Я хочу иметь возможность использовать переключатель --squash при создании образов Docker, так как это сокращает несколько МБ полученного изображения.

Для этого требуются экспериментальные функции, включенные для Docker.

Выполнениеdocker --version подтверждает (как и должно быть) отключение экспериментальных функций на размещенных агентах Azure Pipelines.

Server:
 Engine:
  Version:  18.03.1-ce
  API version:  1.37 (minimum version 1.12)
  Go version:   go1.9.5
  Git commit:   9ee9f40
  Built:    Thu Apr 26 07:15:30 2018
  OS/Arch:  linux/amd64
  Experimental: false

Агенты Linux работают

Kernel Version: 4.15.0-1022-azure
Operating System: Ubuntu 16.04.4 LTS
OSType: linux
Architecture: x86_64

Я пытался изменить /etc/systemd/system/docker.service.d/docker.conf и /etc/docker/daemon.json для начала / включения экспериментальных флагов, но его не удалось включить.

docker.conf

[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// --experimental=tr

или

daemon.json

{ 
    "experimental": true 
} 

Но не сомневайтесь, смогу ли я перезапустить демон на размещенном агенте.

В настоящее время выполняются сборки yaml, вызывающие docker из bash, но в экспериментальной версии ничего не видел.либо веб-интерфейс.

Если я раскручиваю свою собственную виртуальную машину Ubuntu и размещаю на ней агент, экспериментально работает, но хочу избежать затрат и обслуживания с помощью размещенных агентов.

1 Ответ

0 голосов
/ 17 апреля 2019

В образе Ubuntu вы можете просто перезапустить службу Docker после обновления daemon.json.Я использую скрипт с двумя строками:

echo '{ "experimental": true }' | sudo tee /etc/docker/daemon.json
sudo service docker restart
...