跳到主要内容

docker run

  1. 基本镜像启动:

    • 场景:启动一个基本的容器,运行一个单独的应用程序。
    • 示例:docker run -d --name myapp nginx
    • 说明:在后台模式下运行 nginx 镜像,容器命名为 myapp
  2. 映射端口:

    • 场景:启动容器,并将容器内部的端口映射到主机上的端口,以便外部访问应用程序。
    • 示例:docker run -d -p 8080:80 --name myapp nginx
    • 说明:在后台模式下运行 nginx 镜像,将容器内的 80 端口映射到主机的 8080 端口。
  3. 挂载数据卷:

    • 场景:启动容器,并将主机上的目录或文件挂载到容器内部,实现数据持久化。
    • 示例:docker run -d -v /host/data:/container/data --name myapp nginx
    • 说明:在后台模式下运行 nginx 镜像,将主机上的 /host/data 目录挂载到容器内的 /container/data 目录。
  4. 环境变量设置:

    • 场景:启动容器时设置环境变量,影响应用程序的配置或行为。
    • 示例:docker run -d -e ENV_VAR=value --name myapp nginx
    • 说明:在后台模式下运行 nginx 镜像,设置名为 ENV_VAR 的环境变量为 value
  5. 交互式模式:

    • 场景:启动容器并进入交互式模式,与容器内部的命令行交互。
    • 示例:docker run -it --name myapp ubuntu /bin/bash
    • 说明:以交互式模式运行 ubuntu 镜像,启动一个 Bash shell。
  6. 后台运行并进入交互式模式:

    • 场景:启动容器在后台运行,并以交互式模式进入容器内部。
    • 示例:docker run -dit --name myapp ubuntu /bin/bash
    • 说明:以交互式模式运行 ubuntu 镜像,并在后台运行,允许进入容器内部。
  7. 资源限制:

    • 场景:为容器分配特定的资源限制,如 CPU、内存等。
    • 示例:docker run -d --name myapp --cpus 0.5 --memory 512m nginx
    • 说明:在后台模式下运行 nginx 镜像,将容器限制为最多使用 0.5 个 CPU 核心和最多 512MB 内存。
  8. 与主机共享网络命名空间:

    • 场景:启动容器与主机共享网络命名空间,使容器能够直接访问主机上的网络。
    • 示例:docker run -d --name myapp --network host nginx
    • 说明:在后台模式下运行 nginx 镜像,容器与主机共享网络命名空间。
  9. 指定容器名称:

    • 场景:启动容器时指定一个自定义的容器名称。
    • 示例:docker run -d --name mycustomname nginx
    • 说明:在后台模式下运行 nginx 镜像,并将容器命名为 mycustomname
  10. 容器内部端口映射到随机主机端口:

    • 场景:映射容器内部的端口到主机上的随机端口,以便外部访问。
    • 示例:docker run -d -P --name myapp nginx
    • 说明:在后台模式下运行 nginx 镜像,将容器内部的端口映射到主机上的随机端口。
  11. 自动删除容器:

    • 场景:启动容器,完成后自动删除容器。
    • 示例:docker run -d --rm --name myapp nginx
    • 说明:在后台模式下运行 nginx 镜像,容器退出后自动删除。

请根据你的实际需求,在这些示例中选择适合的命令和选项。如果你需要更多特定场景下的示例,欢迎随时询问!