news
Serverspace yeni bir Rocky Linux işletim sistemi ekledi
May 30, 2023
Updated May 30, 2023

Hizmetler başlatıldıktan sonra Docker container (konteyner) çalışması

Docker

Sorun noktası nedir

Docker önceden oluşturulmuş yazılımı "sandboxed" konteyner içinde çalıştıracaktır. Bir yandan, bu yaklaşım bize kesinlikle idempotans sağlar, yazılımın ortamdan ayrılmadığını ve "davranışın" her zaman aynı olduğunu garanti ederiz.

Öte yandan, Docker önceden tanımlanmış komutlar tamamlandığında duracaktır.

Örnek - echo komutundan sonra konteyner hemen duracaktır:

docker run <image> <command>   # Run command
docker ps  # Check the running containers

konteyner hemen durur

Docker'ın bu davranışı bir hata değil, sistem kaynaklarını korumak için bir özelliktir. Ancak bazen konteyner kalıcı olarak çalışmalıdır, örneğin yazılımın "gelen" bağlantıları beklemesi gerekiyorsa.

Docker konteynerini hiç durmamaya nasıl "zorlarsınız"

Hedefinize birkaç yöntemle ulaşabilirsiniz:

Pseudo-terminal launch. Konteyneri zaman zaman çalışır durumda tutmanız gerekiyorsa bu yol iyidir. Komutunuzu -it etiketleri ile çalıştırmanız yeterlidir:

docker run -it <image> bash   # Run command interpreter
<command>   # Run command "inside" the container
docker ps  # Check the container status

Pseudo-terminal launch

Herhangi bir komutu "döngü içinde" çalıştırın. Konteynerin durmasını önlemek için herhangi bir komutu bir döngü içinde çalıştırabilir, ardından terminal oturumunu kapatabilirsiniz:

docker run <image> bash -c <command>

Herhangi bir komutu döngü içinde çalıştırma

Ardından konteyner durumunu kontrol edin:

docker ps

konteyner durumunu kontrol et

Docker'ı "detached" modunda çalıştırırsanız aynı sonucu elde edebilirsiniz. Sadece -d etiketini kullanın:

docker run <image> bash -c <command>
# Run command docker ps  # Check the running containers

docker ayrılmış modda

Sonuç

Bu makaleyi okuduktan sonra, senaryonuz bitmiş olsa bile docker konteynerini nasıl canlı tutacağınızı biliyordunuz.

Vote:
5 out of 5
Аverage rating : 5
Rated by: 1
34384 İstanbul İzzetpaşa Mah. Yeni Yol Cad. No:3 / 336 Şişli
+90 212 900-35-36
700 300
IT-GRAD NL B.V.
700 300
Hizmetlerimizi sunmak, analizler yapmak ve pazarlama için çerezleri kullanıyoruz. Çerez kullanımımız hakkında daha fazla bilgi edinmek için lütfen Gizlilik Politikamıza bakın. Web sitemize göz atmaya devam ederek çerez kullanımımızı kabul etmiş olursunuz.