Asas Docker dan DevOps · Pelajaran

Melaksanakan Aplikasi Berbilang Perkhidmatan

Laksanakan aplikasi tindanan penuh dengan pangkalan data dan perkhidmatan bahagian belakang menggunakan Docker Compose.

Pelajaran 3 daripada 411 langkah

Melaksanakan Aplikasi Berbilang Perkhidmatan ialah pelajaran Asas Docker dan DevOps percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Asas Docker dan DevOps, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Asas Docker dan DevOps merangkumi sejumlah 4 pelajaran.

Menyebarkan Aplikasi Berbilang Perkhidmatan

Selamat datang! Dalam pelajaran ini, kita akan mempelajari cara menjadikan aplikasi tindanan penuh tersedia dalam talian menggunakan Docker Compose.

Anda akan melihat cara mentakrifkan beberapa perkhidmatan seperti aplikasi web dan pangkalan data, kemudian menyebarkan serta menguruskannya bersama-sama.

Melaksanakan Aplikasi Berbilang Perkhidmatan — ilustrasi 1

Contoh Kita: Web & Pangkalan Data

Kita akan menyebarkan aplikasi web ringkas yang bersambung kepada pangkalan data. Ini ialah persediaan biasa bagi banyak aplikasi dunia sebenar.

  • Perkhidmatan Web: Aplikasi Python Flask yang menyajikan halaman web asas.
  • Perkhidmatan Pangkalan Data: Pangkalan data PostgreSQL untuk menyimpan data.

Docker Compose memudahkan pengaturan kedua-dua perkhidmatan ini!

Membina Imej Web

Perkhidmatan web kita memerlukan imej Docker sendiri. Berikut ialah Dockerfile ringkas yang membina aplikasi Python Flask kita.

Fail ini memasang Flask dan penyambung PostgreSQL, kemudian menjalankan app.py kita.

FROM python:3.9-slim-buster

WORKDIR /app

COPY . /app

RUN pip install --no-cache-dir flask psycopg2-binary

EXPOSE 5000

CMD ["python", "app.py"]

`docker-compose.yml`

Fail docker-compose.yml ini mentakrifkan dua perkhidmatan kita: web dan db. Perhatikan cara perkhidmatan web dibina daripada Dockerfile kita dan bersambung kepada perkhidmatan db menggunakan pemboleh ubah persekitaran.

version: '3.8'
services:
  web:
    build: .
    ports:
      - "5000:5000"
    environment:
      DB_HOST: db
      DB_NAME: mydatabase
      DB_USER: user
      DB_PASSWORD: password
    depends_on:
      - db
  db:
    image: postgres:13
    environment:
      POSTGRES_DB: mydatabase
      POSTGRES_USER: user
      POSTGRES_PASSWORD: password
    volumes:
      - db_data:/var/lib/postgresql/data

volumes:
  db_data:

Memulakan Perkhidmatan Anda

Untuk memulakan semua perkhidmatan yang ditakrifkan dalam fail docker-compose.yml anda, gunakan perintah docker compose up.

Bendera -d menjalankan kontena dalam mod "terpisah", iaitu kontena berjalan di latar belakang.

# This command starts your multi-service app
# and runs it in the background.
docker compose up -d

Mengesahkan Kontena yang Sedang Berjalan

Selepas menjalankan docker compose up -d, anda perlu menyemak sama ada semua perkhidmatan berjalan seperti yang dijangka.

Perintah docker compose ps menyenaraikan perkhidmatan, status dan portnya.

# Check the status of your services
docker compose ps

Bersambung kepada Aplikasi Anda

Apabila perkhidmatan sedang berjalan, anda boleh mengakses aplikasi web anda.

  • Buka pelayar web anda.
  • Pergi ke http://localhost:5000.

Anda sepatutnya melihat mesej daripada aplikasi Flask kita yang mengesahkan sambungannya kepada pangkalan data PostgreSQL!

Menskalakan Perkhidmatan

Salah satu ciri Docker Compose yang berkuasa ialah penskalaan perkhidmatan. Jika aplikasi web anda perlu mengendalikan lebih banyak trafik, anda boleh meningkatkan bilangan tika perkhidmatan web dengan mudah.

Gunakan bendera --scale bersama docker compose up.

# Scale the 'web' service to 3 instances
docker compose up --scale web=3 -d

Menghentikan & Mengalih Keluar Perkhidmatan

Apabila anda selesai menggunakan aplikasi, anda boleh menghentikan dan mengalih keluar semua perkhidmatan serta rangkaiannya yang ditakrifkan dalam docker-compose.yml anda.

Perintah docker compose down mengendalikan pembersihan ini untuk anda.

# Stop and remove all services
docker compose down

Semakan Pantas

Pertimbangkan docker-compose.yml yang kita gunakan. Anda baru sahaja memulakan aplikasi dengan docker compose up -d.

Apakah perintah utama untuk menghentikan dan mengalih keluar semua perkhidmatan yang sedang berjalan serta sumber berkaitannya?

Ulang Kaji & Langkah Seterusnya

Syabas! Anda telah mempelajari cara menyebarkan dan mengurus aplikasi berbilang perkhidmatan menggunakan Docker Compose.

  • Kita mentakrifkan perkhidmatan dalam docker-compose.yml.
  • Kita menggunakan docker compose up -d untuk memulakan perkhidmatan.
  • Kita mengesahkan status dengan docker compose ps.
  • Kita menskalakan perkhidmatan dan menggunakan docker compose down untuk pembersihan.

Ini ialah kemahiran asas untuk pembangunan dan pengujian aplikasi kompleks secara setempat!

Percuma untuk bermula

Pelajari Asas Docker dan DevOps dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
12
Pelajaran
48

Soalan Lazim

Adakah pelajaran “Melaksanakan Aplikasi Berbilang Perkhidmatan” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Asas Docker dan DevOps, termasuk “Melaksanakan Aplikasi Berbilang Perkhidmatan”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Asas Docker dan DevOps merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Melaksanakan Aplikasi Berbilang Perkhidmatan”?

Laksanakan aplikasi tindanan penuh dengan pangkalan data dan perkhidmatan bahagian belakang menggunakan Docker Compose. Anda berlatih Asas Docker dan DevOps menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Asas Docker dan DevOps?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Asas Docker dan DevOps di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.

Berapa lamakah pelajaran “Melaksanakan Aplikasi Berbilang Perkhidmatan” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Asas Docker dan DevOps ini?

Ya. Setiap pelajaran Asas Docker dan DevOps menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Apakah Docker Compose?
  2. Menulis Fail Compose
  3. Melaksanakan Aplikasi Berbilang Perkhidmatan
  4. Pemboleh Ubah Persekitaran dan Fail .env
← Kembali ke Asas Docker dan DevOps