Mam waniliową instalację CoreOS (835.9.0) i nie uruchamia on demona dokera podczas uruchamiania. Zaczyna się dopiero, gdy włączę SSH i zrobię np docker ps
.
Jak ustawić demona dokera automatycznie uruchamiającego się podczas uruchamiania systemu?
Kiedy mówię demona dokera, mam na myśli, ps -ef | grep docker
że nie pokazuje żadnych procesów, dopóki nie zrobię tegodocker ps
To już trochę stare, ale zacząłem używać init-chmurę, aby to zrobić na wszystkich nowych serwerach. Mam zapisany skrypt inicjujący chmurę, którego używam na wszystkich moich serwerach. Część zawiera:
Umożliwi to usługę dokera i uruchomi ją przy pierwszym i każdym uruchomieniu.
źródło
Jak już wyjaśniono w tym komentarzu przez Roba , doker jest aktywowany przez gniazdo. Oznacza to, że deamon nie uruchomi się, dopóki nie zostanie wywołany. Istniejące odpowiedzi tutaj działają, ale CoreOS zaleca inne podejście.
Zalecanym sposobem na to, zgodnie z dokumentacją CoreOS, jest stworzenie usługi dla własnej aplikacji, która z kolei wymaga usługi Docker:
/etc/systemd/system/myapp.service:
I zamiast tego niech usługa uruchomi się automatycznie:
Przykładem przypadku jest aktualizacja kontenera do najnowszej wersji po uruchomieniu usługi, a przykład zaawansowany rejestruje usługę w etcd. Przeczytaj dokumentację CoreOS, aby uzyskać więcej informacji ogólnych .
źródło
Korzystam z Docker Swarm, więc nie mam konkretnej aplikacji, za którą systemd byłby odpowiedzialny ... Potrzebuję tylko dokera, aby uruchomić przy starcie. To jest rozwiązanie, które wypracowałem.
Połóż to
/etc/systemd/system/poke-docker.service
:A potem po prostu
systemctl enable poke-docker
ustawić, aby uruchamiał się przy każdym rozruchu, pod koniec sekwencji startowej.docker version
Komenda mówi do demona Döcker, wywołując gniazdo i uruchamiania usług we własnym zakresie Döcker.Próbowałem
systemctl enable docker
podstępu w innej odpowiedzi i chociaż na początku zadziałało, wydaje się, że spowodowało to sytuację stada grzmotów, w której doker najwyraźniej próbował zrobić wiele, a nieszczęśliwie. Podejrzewam, że jest to zachowanie „blokujące łańcuch rozruchowy” wspomniane w komentarzach tam.źródło