Saya memiliki skrip pemula untuk memulai aplikasi nodejs khusus. Aplikasi ini tergantung pada couchdb dan elasticsearch. couchdb dan elasticsearch menyediakan skrip init.d untuk memulai / menghentikannya. Apakah mungkin untuk memberi tahu skrip pemula saya bahwa couchdb dan elasticsearch adalah dependensi? Saya mencoba ini dalam skrip pemula saya tetapi tampaknya tidak berhasil:
mulai (mulai couchdb dan mulai elasticsearch)
Terima kasih!
Jawaban:
Satu-satunya hal yang saya tahu akan berhasil adalah membuat (atau mencari dan menginstal) skrip pemula untuk elasticsearch dan couchdb sehingga Anda dapat menggunakan opsi "mulai".
sumber
Saya memiliki pertanyaan yang sama, dan saya juga menemukan jawaban yang berbeda . Penulis mencantumkan 4 opsi untuk mencapai ini, yang paling saya sukai adalah yang pertama:
Gunakan
initclt emit myservice-started
untuk memberi sinyal penyelesaian startup layanan dependen Anda. Dalam jawaban yang ditautkan, disarankan untuk menambahkan baris ini ke akhirinit.d
skrip layanan dependensi , tapi saya lebih suka metode yang berbeda. Saya suka membuatinid.d
skrip baru bernamamyservice-started
yang hanya berisistart
bagian. Menggunakan gaya komentar yang sesuai di header file, saya menyatakan bahwa itu tergantung pada$myservice
untuk memulai. Distart
bagian ini, saya memberi tahu pemula tentangmyservice
memulai. Anda dapat menginstalnya denganupdate-rc.d
.Saya suka solusi ini karena tidak mengganggu; jika pembaruan mengubah salah satu
init.d
skrip yang ada , itu tidak akan mempengaruhi skrip tambahan ini. Tapi ingat bahwa perubahan script kaya baru Anda yang diperlukan.Mungkin terlihat seperti ini:
Skrip pemula Anda yang menunggu layanan saya dapat mendengarkan
myservice-started
acara:sumber