시스템 시작 중에 docker.service가 cni0.netdev 브리지를 기다리게 만드는 방법은 무엇입니까?

시스템 시작 중에 docker.service가 cni0.netdev 브리지를 기다리게 만드는 방법은 무엇입니까?

우분투 18.04.1 LTS를 실행 중입니다.

로컬 Kubernetes 클러스터/노드에 대한 가상 브리지를 생성하기 위해 cni0.netdev및 파일을 생성했습니다 .cni0.network/etc/systemd/network

활성화했습니다systemd-networkd-wait-online.service

나는 다음을 가지고 있습니다 docker.service [Unit]:

After=network-online.target docker.socket firewalld.service
Wants=network-online.target
Requires=docker.socket

그런데 부팅을 하면 아직 시작이 안됐다고 dockerd하는데 cni0로그인을 해보니 브릿지가 있습니다. 재부팅하면 dockerd브리지를 선택하여 사용합니다.

파일은 자체 "유닛"이 아니라 구성 파일이기 때문에 After=for를 추가할 수 없습니다 .cni0.netdevnetdevsystemd-networkd

systemd-networkd-wait-online.service"모든" 인터페이스가 온라인 상태가 되기를 기다리는 것처럼 보이지만 이는 일반 eth0인터페이스가 됩니다.

dockerd브리지를 시작하기 전에 브리지가 작동 및 구성될 때까지 어떻게 기다리나요?

답변1

다음을 추가해 보세요.After/Wants=sys-devices-virtual-net-cni0.device

다음 명령을 사용하면 장치의 정확한 이름을 확인할 수 있습니다.systemctl

관련 정보