Saya memiliki vanilla install CoreOS (835.9.0) dan tidak memulai daemon docker saat startup. Itu hanya dimulai ketika saya SSH dan lakukan misalnya docker ps
.
Bagaimana saya bisa membuat daemon buruh pelabuhan mulai secara otomatis pada boot sistem?
Ketika saya mengatakan daemon buruh pelabuhan, maksud saya ps -ef | grep docker
tidak menunjukkan proses sampai setelah saya lakukandocker ps
Ini agak lama sekarang, tapi saya sudah mulai menggunakan cloud-init untuk melakukan ini di semua server baru. Saya memiliki skrip cloud-init tersimpan yang saya gunakan untuk semua server saya. Bagian itu mengandung:
Ini akan mengaktifkan layanan buruh pelabuhan dan memulainya pada boot pertama dan setiap boot.
sumber
Seperti yang sudah dijelaskan dalam komentar oleh Rob , buruh pelabuhan ini soket diaktifkan. Itu berarti bahwa deamon tidak dimulai kecuali disebut. Jawaban yang ada di sini berfungsi, tetapi CoreOS merekomendasikan pendekatan yang berbeda.
Cara yang disarankan untuk melakukan ini, menurut dokumentasi CoreOS adalah membuat layanan untuk aplikasi Anda sendiri yang pada gilirannya membutuhkan layanan Docker:
/etc/systemd/system/myapp.service:
Dan mintalah layanan itu mulai secara otomatis:
Contoh use case adalah untuk memperbarui wadah ke versi terbaru setelah layanan dimulai dan contoh lanjutan juga mendaftarkan layanan di etcd. Baca dokumentasi CoreOS untuk informasi latar belakang lebih lanjut.
sumber
Saya menggunakan Docker Swarm, jadi saya tidak memiliki aplikasi khusus untuk systemd yang bertanggung jawab untuk ... Saya hanya perlu buruh pelabuhan untuk memulai saat boot. Ini solusi yang saya usahakan.
Letakkan ini
/etc/systemd/system/poke-docker.service
:Dan kemudian hanya
systemctl enable poke-docker
mengaturnya untuk memicu pada setiap boot, dekat akhir urutan startup. Thedocker version
perintah berbicara dengan daemon buruh pelabuhan, memicu soket dan memulai layanan buruh pelabuhan itu sendiri.Saya mencoba
systemctl enable docker
trik dalam jawaban yang lain, dan sementara itu berhasil pada awalnya, tampaknya telah menyebabkan semacam situasi kawanan petir di mana buruh pelabuhan tampaknya berusaha untuk melakukan banyak hal dan gagal total. Saya menduga ini adalah perilaku "memblokir rantai boot" yang disebutkan dalam komentar di sana.sumber