Docker compose: 在 docker-compose 运行 命令之后的命令

Docker compose: command after docker-compose run command

我遵循这个教程: Python Docker compose 在本教程中,它将创建一个 docker 组合文件:

version: '2'
services:
  db:
    image: postgres
  web:
    build: .
    command: python manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/code
    ports:
      - "8000:8000"
    depends_on:
      - db

之后,运行ning docker compose 命令构建项目:

docker-compose run web django-admin.py startproject composeexample .

我不知道的是:当我阅读另​​一个 docker 教程时,通常我们只是 运行 docker-compose run 运行ning 项目。后面那些命令是什么意思: web django-admin.py startproject composeexample . 据我理解,这个命令的意思是:先创建一个python工程,然后调用docker-compose.yml进行配置。对吗?

docker-compose run 用于 运行 服务容器中的一次性命令。它不能在没有参数的情况下使用 - 至少需要服务名称。有关该命令的更多信息,请参阅 documentation。您提到的命令:

docker-compose run web django-admin.py startproject composeexample .

在项目的 web 容器中执行 django-admin.py startproject composeexample .,覆盖默认命令

command: python manage.py runserver 0.0.0.0:8000

指定用于 docker-compose.yml 中的 web 服务。