Docker Python Django 初始配置设置

王林
发布: 2024-09-01 21:09:38
原创
782 人浏览过

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"]
登录后复制

.
.
.

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 .
登录后复制

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 mahu 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.

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
登录后复制

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
登录后复制

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
登录后复制

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

Akses Aplikasi

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

.
.
.

4.Jumlah Docker

docker run -d --name my-docker-container -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
登录后复制

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
登录后复制

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.

以上是Docker Python Django 初始配置设置的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!