Docker-compose ile bir hizmet başlatmak ve kapsayıcının IP adresini 'docker inspect' aracılığıyla alabilmek için çalışır durumda tutmak istiyorum. Bununla birlikte, konteyner her zaman başlatıldıktan hemen sonra çıkar.
Docker-compose.yml dosyasına "command: [" sleep "," 60 "]" ve diğer şeyleri eklemeye çalıştım, ancak "command: ..." satırını her eklediğimde "docker-compose up" çağrısı yapamıyorum "Kapsayıcı başlatılamıyor ..... Sistem hatası: değerin başlangıcını arayan geçersiz 'k' karakteri" mesajını alacağım
Ayrıca Dockerfile'ın kendisine "CMD sleep 60" eklemeyi denedim, ancak bu komutlar yürütülüyor gibi görünmüyor.
Konteyneri canlı tutmanın veya sorunlarımdan birini çözmenin kolay bir yolu var mı?
DÜZENLEME: Çalıştırmak istediğim Compose dosyası:
version: '2'
services:
my-test:
image: ubuntu
command: bash -c "while true; do echo hello; sleep 2; done"
İyi çalışıyor Bunu OS X altında docker-compose ile başlatırsam, ancak Ubuntu 16.04 altında aynı şeyi denersem, bana yukarıdaki hata mesajını verir.
Yaklaşımı Dockerfile ile denersem, Dockerfile şöyle görünür:
FROM ubuntu:latest
CMD ["sleep", "60"]
Hiçbir şey yapmıyor gibi görünen
DÜZENLEME 2: Kendimi düzeltmem gerekiyor, bunun Dockerfile ve docker-compose.yml ile aynı sorun olduğu ortaya çıktı: Dockerfile'a her "CMD ..." veya "command ..." oluşturma dosyası, geçersiz karakter ile yukarıdaki hata alıyorum. Her iki komutu da kaldırırsam kusursuz çalışıyor.