docker-compose run

描述

创建并运行服务容器

用法

Usage:
    run [options] [-v VOLUME...] [-p PORT...] [-e KEY=VAL...] [-l KEY=VALUE...]
        SERVICE [COMMAND] [ARGS...]

Options:
    -d, --detach          后台运行容器,打印容器名称
    --name NAME           命名容器
    --entrypoint CMD      覆写镜像入口.
    -e KEY=VAL            设置环境变量
    -l, --label KEY=VAL   添加标签
    -u, --user=""         指定用户运行
    --no-deps             不关联服务
    --rm                  运行后删除容器
    -p, --publish=[]      手动暴露容器端口
    --service-ports       暴露配置的容器端口
    --use-aliases         使用别名
    -v, --volume=[]       绑定卷 (默认 [])
    -T                    禁止虚拟终端
    -w, --workdir=""      容器内工作目录

实例

创建并运行web,并进入伪终端

docker-compose run web bash

默认不会映射创建容器的端口,需要带上--service-ports参数

docker-compose run --service-ports web python manage.py shell

也可以使用 --publish or -p 参数来手动映射端口

docker-compose run --publish 8080:80 -p 2022:22 -p 127.0.0.1:2021:21 web python manage.py shell

创建运行与服务差关联的容器

docker-compose run db psql -h db -U docker

创建运行一个与服务无关的容器

docker-compose run --no-deps web python manage.py shell

创建运行后删除容器

docker-compose run --rm web python manage.py db upgrade