2015-02-19 10 views
12

init-checkconf kullanarak bir upsr komut dosyası üzerinde bir sözdizimi denetimi yapmaya çalışıyorum. Ancak, çalıştırdığımda ERROR: version of /sbin/initctl too old döndürür.initctl çok eski upstart denetimi

Ne yapacağımı bilmiyorum, yeniden başlatma işlemini denedim ama hiçbir şey değişmiyor. Bu, docker kabından (ubuntu: 14.04), bununla bir ilgisi olabilecek şekilde çalıştırılıyor.

+0

denedin yapıyor bir 'apt-get yeniden yüklemeden önce update'? –

+0

Ben hala aynı hatayı yaptım, güncelleyin, yükseltin ve yeniden yükleyin. – lochlanna

+0

Çözümü buldunuz mu? – ogur

cevap

8

Sadece aynı sorunla karşılaştım.

kapta Looking

: Ben tamamen henüz test etmedim

[email protected]:/# cat /sbin/initctl 
#!/bin/sh 
exit 0 

, ama benim Dockerfile için aşağıdaki eklendi:

# Fix upstart 
RUN rm -rf /sbin/initctl && ln -s /sbin/initctl.distrib /sbin/initctl 

Ben this bağlantı oldukça iyi açıkladı düşündüm:

Docker kabını başlattığınızda, yalnızca CMD komutu çalıştırılır. Konteynerin içinde çalışacak tek süreçler, CMD komutu ve ortaya çıkardığı tüm süreçlerdir. Bu nedenle, her türlü önemli sistem hizmetleri otomatik olarak çalıştırılmaz - bunları kendiniz çalıştırmanız gerekir. Biraz daha, ben sonradan görme bir çalışma versiyonunu içeren resmi bir Ubuntu görüntü bulduk etrafında

Kazı: https://registry.hub.docker.com/_/ubuntu-upstart/