Aracılığıyla paylaş


Öğretici: Visual Studio Code ile kapsayıcı uygulaması oluşturma

Bu öğretici, Visual Studio Code (VS Code) ile kullanılmak üzere Docker'ı tanıtan dört bölümden oluşan bir serinin başlangıcıdır. Docker kapsayıcıları oluşturmayı ve çalıştırmayı, verilerikalıcı hale getirmeyi ve Docker Compose ile birden çok kapsayıcıyı yönetmeyi öğreneceksiniz.

VS Code, yerel bir Docker Desktop hizmetiyle çalışmanızı sağlayan bir Kapsayıcı Araçları uzantısı sunar. Docker Desktop bilgisayarınızda çalışır ve uygulama derlemeye ve çalıştırmaya yönelik bir platform sağlayan sıkıştırılmış sanallaştırılmış ortamlar olan yerel kapsayıcılarınızı yönetir. Kapsayıcılar, tam bir işletim sisteminin boyutunu ve ek yükünü gerektirmez.

Bu ilk öğreticide şunların nasıl yapılacağını öğreneceksiniz:

  • Docker kapsayıcısı oluşturun.
  • Kapsayıcı görüntüsü oluştur.
  • Bir uygulama kapsayıcısı başlatın.

Önkoşullar

Öğretici, Linux kapsayıcılarını kullanacak şekilde yapılandırılmış Windows 10 veya üzeri ve Docker Desktop ile çalışır.

Kapsayıcı oluşturma

Kapsayıcı, bilgisayarınızdaki bir işlemdir. Ana bilgisayardaki diğer tüm işlemlerden izole edilmiştir. Bu yalıtımda çekirdek ad alanları ve denetim grupları kullanılır.

Kapsayıcı yalıtılmış bir dosya sistemi kullanır. Bu özel dosya sistemi, kapsayıcı görüntüsütarafından sağlanır. Görüntü, tüm bağımlılıklar, yapılandırma, betikler ve ikili dosyalar gibi bir uygulamayı çalıştırmak için gereken her şeyi içerir. Görüntü ayrıca kapsayıcı için ortam değişkenleri, çalıştırılacak varsayılan komut ve diğer meta veriler gibi başka yapılandırmalar da içerir.

VS Code için Kapsayıcı Araçları uzantısını yükledikten sonra VS Code'da kapsayıcılarla çalışabilirsiniz. Kapsayıcı Gezgini'ndeki bağlam menülerine ek olarak, bir komut satırı penceresi açmak için Terminal>Yeni Terminal'i seçebilirsiniz. Bash penceresinde de komut çalıştırabilirsiniz. Belirtilmediği sürece, Bash olarak etiketlenen tüm komutlar Bash penceresinde veya VS Code terminalinde çalıştırılabilir.

  1. Docker'ı Linux kapsayıcı moduna ayarlayın. Şu anda Windows kapsayıcıları olarak ayarlandıysanız Linux kapsayıcılarına geçmek için Docker Desktop çalışırken sistem tepsisindeki Docker simgesine sağ tıklayın ve Linux kapsayıcılarına geçiş yapöğesini seçin.

  2. VS Code'da Terminal>Yeni Terminalseçin.

  3. Terminal penceresinde veya Bash penceresinde bu komutu çalıştırın.

    docker run -d -p 80:80 docker/getting-started
    

    Bu komut aşağıdaki parametreleri içerir:

    • -d Kapsayıcıyı arka planda ayrılmış modda çalıştırın.
    • -p 80:80 Konağın 80 numaralı bağlantı noktasını kapsayıcıdaki 80 numaralı bağlantı noktasına eşleyin.
    • docker/getting-started Kullanılacak görüntüyü belirtir.

    Bahşiş

    Tam komutu kısaltmak için tek karakterli bayrakları birleştirebilirsiniz. Örneğin, yukarıdaki komut şöyle yazılabilir:

    docker run -dp 80:80 docker/getting-started
    
  4. VS Code'da sol taraftaki Kapsayıcılar simgesini seçerek Kapsayıcı Gezgini'ni görüntüleyin.

    Docker/getting-started kılavuzunun çalıştığını gösteren kapsayıcı araçları uzantısının ekran görüntüsü.

    Kapsayıcı Araçları VS Code Uzantısı, bilgisayarınızda çalışan kapsayıcıları gösterir. Kapsayıcı günlüklerine erişebilir ve durdurma ve kaldırma gibi kapsayıcıların yaşam döngüsünü yönetebilirsiniz.

    Bu örnekte modest_shockley kapsayıcı adı rastgele oluşturulur. Sizinkinin farklı bir ismi olacak.

  5. docker/getting-started üzerinde sağ tıklayın ve bağlam menüsünü açın. Tarayıcıda Açöğesini seçin.

    Bunun yerine bir tarayıcı açın ve http://localhost/tutorial/girin.

    DockerLabs hakkında yerel olarak barındırılan bir sayfa görürsünüz.

  6. docker/getting-started üzerinde sağ tıklayın ve bağlam menüsünü açın. 'ı seçin, bu konteyneri kaldırmak için'i kaldırın.

    Komut satırını kullanarak kapsayıcıyı kaldırmak için, kapsayıcı kimliğini almak için şu komutu çalıştırın:

    docker ps
    

    Ardından kapsayıcıyı durdurun ve kaldırın:

    docker stop <container-id>
    docker rm <container-id>
    
  7. Tarayıcınızı yenileyin. Bir dakika önce gördüğünüz Başlarken sayfası yok.

Uygulama için kapsayıcı görüntüsü oluşturma

Bu öğreticide basit bir Todo uygulaması kullanılır.

Ekran görüntüsü, birkaç öğenin eklendiği örnek uygulamayı ve yeni öğeler eklemek için bir metin kutusu ve düğmeyi gösterir.

Uygulama, iş öğeleri oluşturmanıza ve bunları tamamlandı olarak işaretlemenize veya silmenize olanak tanır.

Uygulamayı oluşturmak için Dockerfileoluşturun. Dockerfile, kapsayıcı görüntüsü oluşturmak için kullanılan metin tabanlı yönergeler betiğidir.

  1. Docker Kullanmaya Başlama Öğreticisi deposuna gidin ve Code>ZIPİndir'i seçin. İçeriği yerel bir klasöre ayıklayın.

    Ekran görüntüsü, Yeşil Kod düğmesi ve ZIP'i İndir seçeneğinin vurgulandığı GitHub sitesinin bir bölümünü gösterir.

  2. VS Code'da Dosya>Klasör Açseçin. Ayıklanan projede uygulama klasörüne gidin ve bu klasörü açın. package.json adlı bir dosya ve src ve spec adlı iki klasör görmeniz gerekir.

    Uygulamanın yüklü olduğu package.json dosyasını gösteren Visual Studio Code'un ekran görüntüsü.

  3. Aşağıdaki içeriklerle package.json dosyayla aynı klasörde Dockerfile adlı bir dosya oluşturun.

    FROM node:lts-alpine
    RUN apk add --no-cache python3 g++ make
    WORKDIR /app
    COPY . .
    RUN yarn install --production
    CMD ["node", "/app/src/index.js"]
    

    Not

    Dosyanın .txtgibi bir dosya uzantısı olmadığından emin olun.

  4. Dosya gezgininde, VS Code'un sol tarafındaki Dockerfile sağ tıklayın ve Build Imageöğesini seçin. Resmin etiketi olarak getting-started metin giriş kutusuna girin.

    Etiket, görüntü için dostça bir addır.

    Komut satırından kapsayıcı görüntüsü oluşturmak için appiçeren klasöründen aşağıdaki komutu kullanın.

    docker build -t getting-started .
    

Yeni bir kapsayıcı görüntüsü oluşturmak için Dockerfile kullandınız. Birçok "katmanın" indirildiğini fark etmiş olabilirsiniz. Dockerfilenode:lts-alpine görüntüsünden başlar. Bu görüntü bilgisayarınızda olmadığı sürece, bu görüntünün indirilmesi gerekiyordu.

Görüntü indirildikten sonra Dockerfile uygulamanızı kopyalar ve uygulamanızın bağımlılıklarını yüklemek için yarn kullanır. CMD içerisindeki değeri, bu görüntüden bir kapsayıcı başlatılırken çalıştırılacak varsayılan komut olarak belirtilmiştir.

. komutunun sonundaki docker build Docker'ın geçerli dizinde Dockerfile araması gerektiğini bildirir.

Uygulama kapsayıcınızı başlatma

Artık bir görüntüye sahip olduğunuz için uygulamayı çalıştırabilirsiniz.

  1. Kapsayıcınızı başlatmak için aşağıdaki komutu kullanın.

    docker run -dp 3000:3000 getting-started
    

    -d parametresi, kapsayıcıyı arka planda ayrılmış modda çalıştırdığınızı gösterir. -p değeri, 3000 konak bağlantı noktası ile 3000 kapsayıcı bağlantı noktası arasında bir eşleme oluşturur. Bağlantı noktası eşlemesi olmadan uygulamaya erişemezsiniz.

  2. Bekledikten sonra, VS Code'da, Kapsayıcı Gezgini'nde, CONTAINERS'ın altında getting-started'e sağ tıklayın ve Tarayıcıda Aç'ı seçin. Bunun yerine http://localhost:3000için web tarayıcınızı açabilirsiniz.

    Uygulamanın çalıştığını görmeniz gerekir.

    Ekran görüntüsünde, öğe içermeyen örnek uygulama gösterilmiştir ve yukarıda

  3. Beklediğiniz gibi çalışıp çalışmadığını test etmek için bir veya iki öğe ekleyin. Öğeleri tamamlandı olarak işaretleyebilir ve öğeleri kaldırabilirsiniz. Ön ucunuz öğeleri arka uçta başarıyla depoluyor.

Sonraki adımlar

Bu öğreticiyi tamamladınız ve birkaç öğe içeren çalışan bir yapılacaklar listesi yöneticiniz var. Kapsayıcı görüntüleri oluşturmayı ve kapsayıcılı bir uygulama çalıştırmayı öğrendinsiniz.

Bu seride ilerlemek için şimdiye kadar yaptığınız her şeyi saklayın. Ardından, bu serinin II. bölümünü deneyin:

Sizin için yararlı olabilecek bazı kaynaklar şunlardır: