Alir Kerja Docker
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"]
.
.
.
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 .
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
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
Arahan ini akan memaparkan senarai semua imej Docker, bersama-sama REPOSITORI, TAG, ID IMEJ, DIBUAT dan SAIZ mereka.
REPOSITORY TAG IMAGE ID CREATED SIZE my-docker-image latest d1a1f2e8f7b2 2 hours ago 450MB python 3.11 a2d3c4e5f6g7 5 days ago 800MB
.
.
.
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:
docker run -d --name my-docker-container -p 8001:8000 my-docker-image
Selepas menjalankan arahan ini, anda boleh menyemak sama ada bekas sedang berjalan dengan menggunakan:
docker ps
Ini akan menyenaraikan semua bekas yang sedang berjalan bersama-sama dengan nama, status dan pemetaan portnya.
Anda kini boleh mengakses aplikasi Django anda dengan menavigasi ke http://localhost:8001 dalam penyemak imbas web anda.
.
.
.
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:
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!
.
.
.
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
To use this docker-compose.yml file, save it in your project directory and run:
docker-compose up
This command will start the container based on the configuration in the docker-compose.yml file.
[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!