Docker-compose up ve docker-compose start arasındaki fark nedir?


124

Ne zaman infaz edersem

docker-compose start 
docker-compose ps

Kaplarımı "YUKARI" durumuyla görüyorum. Eğer yaparsam

docker-compose up -d

Daha ayrıntılı göreceğim ama aynı duruma sahip olacak. Her iki komut arasında herhangi bir fark var mı?

Yanıtlar:


166

docker-compose başlangıcı
( https://docs.docker.com/compose/reference/start/ )

Bir hizmet için mevcut kapsayıcıları başlatır.

docker-compose up
( https://docs.docker.com/compose/reference/up/ )

Bir hizmet için kapsayıcıları oluşturur, (yeniden) oluşturur, başlatır ve ekler.

Zaten çalışmadıkları sürece, bu komut aynı zamanda bağlantılı hizmetleri de başlatır.

docker-compose upKomut Her bir kap (esas olarak çalışan çıkışını birleştirir docker-compose logs -f). Komut çıktığında, tüm kapsayıcılar durdurulur. Çalıştırmak docker-compose up -d, kapsayıcıları arka planda başlatır ve çalışır durumda bırakır.

Bir hizmet için mevcut kapsayıcılar varsa ve hizmetin yapılandırması veya görüntüsü, kapsayıcı oluşturulduktan sonra değiştirildiyse docker-compose up, değişiklikleri kapları durdurarak ve yeniden oluşturarak alır (takılı birimleri koruyarak). Compose'un değişiklikleri almasını önlemek için --no-recreatebayrağı kullanın .

Tam CLI referansı için:
https://docs.docker.com/compose/reference/


3
docker-compose CLI referansı için güncellenmiş bağlantı: docs.docker.com/compose/reference * docker-compose up: docs.docker.com/compose/reference/up * docker-compose start: docs.docker.com/compose/reference / başlangıç
michael

18

Docker'da Sıkça sorulan sorular bu çok açık bir şekilde açıklanmaktadır:

Up, run ve start arasındaki fark nedir?

Genellikle istersiniz docker-compose up. A'da uptanımlanan tüm hizmetleri başlatmak veya yeniden başlatmak için kullanın docker-compose.yml. Varsayılan "ekli" modda, tüm kapsayıcılardan tüm günlükleri görürsünüz. "Ayrılmış" modda ( -d), Compose, kapsayıcıları başlattıktan sonra çıkar ancak kapsayıcılar arka planda çalışmaya devam eder.

docker-compose runKomut “bir defaya mahsus” veya “anlık” görevleri çalıştıran içindir. Çalıştırmak istediğiniz hizmet adını gerektirir ve yalnızca çalışan hizmetin bağlı olduğu hizmetler için kapsayıcıları başlatır. run Veri hacmi kabına veri eklemek veya kaldırmak gibi testler çalıştırmak veya bir yönetim görevi gerçekleştirmek için kullanın . runKomut gibi davranan docker run -tibu konteynere bir interaktif terminali açılır ve kap içinde işlemin çıkış durumu uyan bir çıkış durumu ile döner olmasıyla.

docker-compose startKomut sadece daha önce oluşturulan, ancak durduruldu yeniden başlatma kaplarda yararlıdır. Asla yeni kaplar yaratmaz.


yeniden başlatma komutu bunlardan ne kadar farklıdır - çalıştır, başlat, başlat?
Nag
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.