Saya dapat mengaktifkan restart otomatis --restart=always
, tetapi setelah saya menghentikan wadah, bagaimana cara mematikan atribut itu?
Saya biasanya menjalankan server web dan biasanya memetakan port 80:
docker run -d --restart=always -p 80:80 -i -t myuser/myproj /bin/bash
Tetapi ada saat-saat ketika saya ingin menjalankan versi gambar saya yang lebih baru, tetapi saya ingin menyimpan wadah yang lama. Masalahnya adalah bahwa jika ada beberapa kontainer dengan --restart=always
, hanya satu dari mereka (acak?) Dimulai karena mereka semua bersaing untuk port 80 pada host.
docker update --restart=no $(docker ps -a -q)
untuk memperbarui semua wadah Anda :-)Anda dapat memulai wadah Anda dengan
--restart=unless-stopped
.sumber
Gunakan di bawah ini untuk menonaktifkan SEMUA wadah restart otomatis (daemon).
Gunakan yang berikut untuk menonaktifkan memulai ulang wadah TUNGGAL.
Rasional :
Docker menyediakan kebijakan mulai ulang untuk mengontrol apakah wadah Anda mulai secara otomatis ketika mereka keluar, atau ketika Docker memulai kembali. Ini sering sangat berguna ketika Docker menjalankan layanan utama.
Catatan
Jika Anda menggunakan komposisi buruh pelabuhan, ini mungkin berguna untuk diketahui.
sumber
Jika Anda memiliki segerombolan yang me-restart kontainer, segerombolan akan memulai kembali setiap kontainer yang Anda hentikan atau rm, terlepas dari opsi restart. Itu fitur, bukan bug.
Pastikan Anda tidak menjalankan layanan yang Anda lupa:
Kemudian, Anda dapat menghentikan layanan
sumber
ls
mengakibatkan kesalahanError response from daemon: This node is not a swarm manager. Use "docker swarm init" or "docker swarm join" to connect this node to swarm and try again.