Docker ワークフロー
Dockerfile の準備ができており、プロジェクトのルート ディレクトリに配置されていることを確認してください。前の説明に基づいて、Dockerfile は次のようになります:
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"]
.
.
.
ターミナルを開き、Dockerfile が存在するディレクトリに移動します。次に、次のコマンドを実行して Docker イメージを構築し、my-docker-image という名前を付けます:
docker build -t my-docker-image .
このコマンドはコンテナを実行し、コンテナのポート 8000 をローカル マシンのポート 8000 にマップします。これにより、http://localhost:8000 経由で Django アプリケーションにアクセスできるようになります。
コンテナをバックグラウンドで実行する場合は、-d オプションを追加します。
docker run -d -p 8000:8000 my-docker-image
これにより、コンテナが分離モードで起動されます。
**docker イメージ**
システムで利用可能な Docker イメージを確認するには、次のコマンドを使用できます:
docker images
このコマンドは、すべての Docker イメージのリストと、そのリポジトリ、タグ、イメージ ID、作成済み、およびサイズを表示します。
REPOSITORY TAG IMAGE ID CREATED SIZE my-docker-image latest d1a1f2e8f7b2 2 hours ago 450MB python 3.11 a2d3c4e5f6g7 5 days ago 800MB
.
.
.
指定したコマンドは、my-docker-container という名前の Docker コンテナを分離モードで実行し、ローカル マシンのポート 8001 をコンテナ内のポート 8000 にマッピングします。コマンドの動作は次のとおりです:
docker run -d --name my-docker-container -p 8001:8000 my-docker-image
このコマンドを実行した後、次のコマンドを使用してコンテナが実行されているかどうかを確認できます。
docker ps
これにより、実行中のすべてのコンテナがその名前、ステータス、ポート マッピングとともに一覧表示されます。
Web ブラウザで http://localhost:8001 に移動すると、Django アプリケーションにアクセスできるようになります。
.
.
.
docker run -d --name my-docker-container -p 8001:8000 -v .:/app my-docker-image
指定した docker run コマンドは、Docker イメージから Docker コンテナを起動するために使用されます。コマンドの内訳は次のとおりです:
このコマンドは、ホスト マシンのポート 8001 からコンテナ内のポート 8000 にアクセスできる状態で、バックグラウンドでコンテナを起動し、現在のディレクトリをコンテナ内の /app にマウントします。調整や詳しい説明が必要な場合は、お気軽にお問い合わせください。
.
.
.
docker-compose.yml ファイルは、複数コンテナーの Docker アプリケーションを定義して実行するために使用されます。以下は、docker run コマンドに基づく docker-compose.yml ファイルの基本的な例です。
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.
以上がDocker Python Django の初期構成セットアップの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。