Persediaan konfigurasi awal Docker Python Django

王林
Lepaskan: 2024-09-01 21:09:38
asal
981 orang telah melayarinya

Alir Kerja Docker

1. Pastikan Fail Docker Anda Betul

Pastikan Fail Docker anda sedia dan terletak dalam direktori akar projek anda. Berdasarkan perbincangan sebelumnya, Dockerfile anda mungkin kelihatan seperti ini:

FROM python:3.11

ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1

WORKDIR /app

COPY requirements.txt .

RUN pip install --upgrade pip
RUN pip install -r requirements.txt

COPY . .

EXPOSE 8000

CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
Salin selepas log masuk

.
.
.

2. Bina Imej Docker

Buka terminal anda dan navigasi ke direktori tempat Fail Docker anda berada. Kemudian jalankan arahan berikut untuk membina imej Docker dan namakannya my-docker-image:

docker build -t my-docker-image .
Salin selepas log masuk

Arahan ini menjalankan bekas dan memetakan port 8000 bekas ke port 8000 pada mesin tempatan anda, membolehkan anda mengakses aplikasi Django melalui http://localhost:8000.

Jika anda ingin menjalankan bekas di latar belakang, tambahkan pilihan -d:

docker run -d -p 8000:8000 my-docker-image
Salin selepas log masuk

Ini akan memulakan bekas dalam mod tertanggal.

**imej buruh pelabuhan**

Untuk menyemak imej Docker yang tersedia pada sistem anda, anda boleh menggunakan arahan berikut:

docker images
Salin selepas log masuk

Arahan ini akan memaparkan senarai semua imej Docker, bersama-sama REPOSITORI, TAG, ID IMEJ, DIBUAT dan SAIZ mereka.

Contoh Output:

REPOSITORY          TAG       IMAGE ID       CREATED        SIZE
my-docker-image     latest    d1a1f2e8f7b2   2 hours ago    450MB
python              3.11      a2d3c4e5f6g7   5 days ago     800MB
Salin selepas log masuk

Penjelasan:

  • REPOSITORI: Nama imej, cth., my-docker-image.
  • TAG: Teg imej, selalunya digunakan untuk menentukan versi.
  • ID IMEJ: Pengecam unik untuk imej.
  • DICIPTA: Masa imej dicipta.
  • SAIZ: Saiz imej.

.
.
.

3.Bina Bekas Docker

Arahan yang anda berikan akan menjalankan bekas Docker bernama my-docker-container dalam mod tertanggal, memetakan port 8001 pada mesin tempatan anda kepada port 8000 di dalam bekas. Inilah yang dilakukan oleh perintah:

Perintah:

docker run -d --name my-docker-container -p 8001:8000 my-docker-image
Salin selepas log masuk

Penjelasan:

  • -d: Menjalankan bekas dalam mod tertanggal, bermakna ia berjalan di latar belakang.
  • --name my-docker-container: Berikan nama my-docker-container kepada bekas.
  • -p 8001:8000: Peta port 8001 pada mesin tempatan anda ke port 8000 di dalam bekas. Ini membolehkan anda mengakses aplikasi Django di http://localhost:8001.
  • imej-docker-saya: Menentukan imej Docker untuk digunakan untuk bekas.

Sahkan Bekas Berjalan

Selepas menjalankan arahan ini, anda boleh menyemak sama ada bekas sedang berjalan dengan menggunakan:

docker ps
Salin selepas log masuk

Ini akan menyenaraikan semua bekas yang sedang berjalan bersama-sama dengan nama, status dan pemetaan portnya.

Akses Aplikasi

Anda kini boleh mengakses aplikasi Django anda dengan menavigasi ke http://localhost:8001 dalam penyemak imbas web anda.

.
.
.

4.Jumlah Docker

larian buruh pelabuhan -d --nama bekas-docker saya -p 8001:8000 -v .:/app my-docker-image

Arahan docker run yang anda berikan digunakan untuk memulakan bekas Docker daripada imej Docker. Berikut ialah pecahan arahan:

  • -d: Menjalankan bekas dalam mod tertanggal (di latar belakang).
  • --name my-docker-container: Berikan nama kepada bekas (my-docker-container).
  • -p 8001:8000: Peta port 8000 di dalam bekas ke port 8001 pada mesin hos anda. Ini bermakna anda boleh mengakses perkhidmatan yang dijalankan dalam bekas di localhost:8001 pada mesin hos anda.
  • -v .:/app: Melekapkan direktori semasa (.) daripada mesin hos anda ke direktori /app di dalam bekas. Ini berguna untuk pembangunan apabila anda ingin melihat perubahan dalam masa nyata tanpa membina semula imej.
  • my-docker-image: Menentukan imej Docker untuk digunakan untuk bekas.

Jadi, arahan ini akan memulakan bekas di latar belakang, dengan port 8000 di dalam bekas boleh diakses pada port 8001 mesin hos anda dan ia akan melekapkan direktori semasa ke /app dalam bekas. Jika anda memerlukan sebarang pelarasan atau penjelasan lanjut, jangan ragu untuk bertanya!

.
.
.

5.Docker-compose.yml

Fail docker-compose.yml digunakan untuk mentakrif dan menjalankan aplikasi Docker berbilang bekas. Berikut ialah contoh asas fail docker-compose.yml berdasarkan arahan docker run anda:

version: '3.8'  # Specify the version of Docker Compose

services:
  my-service:
    image: my-docker-image  # The Docker image to use
    container_name: my-docker-container  # The name of the container
    ports:
      - "8001:8000"  # Map port 8000 in the container to port 8001 on the host
    volumes:
      - .:/app  # Mount the current directory to /app in the container
    # Optional: Add environment variables if needed
    # environment:
    #   - ENV_VAR_NAME=value
    # Optional: Specify any commands to run
    # command: python app.py

# Optional: Define networks or other configurations here
# networks:
#   default:
#     driver: bridge
Salin selepas log masuk

Explanation:

  • version: Defines the version of Docker Compose file format. 3.8 is a common choice.
  • services: Lists all the containers you want to run.
    • my-service: The name of the service. You can use any name here.
    • image: Specifies the Docker image to use.
    • container_name: Assigns a name to the container.
    • ports: Maps container ports to host ports.
    • volumes: Mounts directories or files from the host to the container.
    • environment: (Optional) Defines environment variables inside the container.
    • command: (Optional) Overrides the default command specified in the Docker image.

To use this docker-compose.yml file, save it in your project directory and run:

docker-compose up
Salin selepas log masuk

This command will start the container based on the configuration in the docker-compose.yml file.

Docker Python Django initial configuration setup

[Source - Mayank Ahuja ]

Let's understand the ?????? ???????? -

[1.] Develop
◾ Write your application code.

[2.] Dockerfile
◾ Create a Dockerfile that defines the environment and dependencies for your application.

[3.] Build Image
◾ Use docker build to create a Docker image from your Dockerfile.

[4.] Run Container
◾ Use docker run to launch a container from your image.
◾ The container is an isolated instance of your application.

[5.] Test
◾ Test your application within the container.
◾ If you make changes, rebuild the image and recreate the container.

[6.] Push => This is Optional
◾ Use docker push to share your image on a registry (e.g. Docker Hub).

[7.] Pull => This is Optional
◾ Others can use docker pull to download your image and run your application in their own environments.

Atas ialah kandungan terperinci Persediaan konfigurasi awal Docker Python Django. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!