Назад | Перейти на главную страницу

Не удается разрешить хост при скручивании зависимостей в systemd

Я использую CoreOS с cloud-init и пытаюсь завить для фланели. У меня есть юнит-файл как таковой:

[Unit]
Description=Run flannel
Documentation=https://github.com/coreos/flannel
Requires=etcd2.service
After=etcd2.service
[Service]
ExecStartPre=/usr/bin/curl -L -o /opt/bin/flannel-0.5.1-linux-amd64.tar.gz -z /opt/bin/flannel-0.5.1-linux-amd64.tar.gz https://github.com/coreos/flannel/releases/download/v0.5.1/flannel-0.5.1-linux-amd64.tar.gz
ExecStartPre=/usr/bin/tar -C /opt/bin -xzvf /opt/bin/flannel-0.5.1-linux-amd64.tar.gz
ExecStartPre=/usr/bin/mv /opt/bin/flannel-0.5.1/flanneld /opt/bin/flanneld
ExecStartPre=/usr/bin/rm -rf /opt/bin/flannel-0.5.1
ExecStartPre=/usr/bin/rm -rf /opt/bin/flannel-0.5.1-linux-amd64.tar.gz
ExecStart=/opt/bin/flanneld

когда дело доходит до скручивания фланели, я получаю cannot resolve host 'github.com' и curl выходит с кодом 1. Есть ли проблема, из-за которой я не могу использовать DNS во время запуска systemd?

Для CoreOS вам потребуется:

[Unit]
Requires=network-online.target

Eсть разница между network.target и network-online.target. network-online.target это то, что втягивается при попытке выполнить сетевое монтирование в /etc/fstab, и ваши потребности в зависимости ближе к этому. Чтобы использовать это.