docker教程
Docker 基础
Docker简介
Docker 安装
Docker 核心概念
Docker 命令基础
Docker 镜像操作
获取 Docker 镜像
构建 Docker 镜像
管理 Docker 镜像
Docker 容器操作
Docker运行容器
Docker容器的生命周期
Docker容器数据管理
Docker容器网络
Docker容器日志管理
Docker Compose
Docker Compose 简介
Docker Compose 安装
Docker Compose 文件编写
Docker Compose 命令
Docker 安全
Docker 安全基础
Docker 安全最佳实践
Docker 生产环境部署
Docker 集群管理
持续集成与持续部署
Docker监控与日志管理
Docker 高级主题
Docker 网络高级
Docker 存储高级
Docker 容器编排
-
+
首页
Docker运行容器
# 运行容器 ## 使用 docker run 命令 `docker run` 命令用于创建并启动一个新的容器。它是 Docker 中最常用的命令之一,支持多种参数来配置容器的运行环境。 ### 基本语法 ```bash docker run [OPTIONS] IMAGE [COMMAND] [ARG...] ``` ### 常用参数 - **-d**:后台运行容器,并返回容器 ID。 - **-p**:端口映射,格式为 `宿主机端口:容器端口`。 - **-e**:设置环境变量。 - **-v**:挂载卷,格式为 `宿主机路径:容器路径`。 - **--name**:为容器指定一个名称。 - **--rm**:容器退出时自动清理容器文件系统。 - **--network**:设置容器的网络连接。 - **-it**:分配一个伪终端并保持 STDIN 打开,通常用于进入容器内部。 ### 示例 - **前台运行** ```bash docker run -it ubuntu:latest /bin/bash ``` 该命令会创建一个基于 `ubuntu:latest` 镜像的容器,并进入容器的 `/bin/bash` 终端。容器会在前台运行,直到你退出终端。 - **后台运行** ```bash docker run -d -p 8080:80 --name my-nginx nginx:latest ``` 该命令会创建一个基于 `nginx:latest` 镜像的容器,并在后台运行。容器的 80 端口映射到宿主机的 8080 端口,容器名称为 `my-nginx`。 ## 容器的前台和后台运行 ### 前台运行 - **命令** ```bash docker run -it <image_name> <command> ``` - **说明** - `-it` 参数组合了两个参数: - `-i`:保持 STDIN 打开,即使没有附加。 - `-t`:分配一个伪终端。 - `<image_name>`:镜像名称。 - `<command>`:容器启动后执行的命令,例如 `/bin/bash`。 - **示例** ```bash docker run -it ubuntu:latest /bin/bash ``` 该命令会创建一个基于 `ubuntu:latest` 镜像的容器,并进入容器的 `/bin/bash` 终端。容器会在前台运行,直到你退出终端(通常使用 `exit` 命令或按 `Ctrl+D`)。 ### 后台运行 - **命令** ```bash docker run -d <image_name> <command> ``` - **说明** - `-d` 参数表示在后台运行容器。 - `<image_name>`:镜像名称。 - `<command>`:容器启动后执行的命令,例如 `nginx -g 'daemon off;'`。 - **示例** ```bash docker run -d -p 8080:80 --name my-nginx nginx:latest ``` 该命令会创建一个基于 `nginx:latest` 镜像的容器,并在后台运行。容器的 80 端口映射到宿主机的 8080 端口,容器名称为 `my-nginx`。 ### 进入后台运行的容器 - **命令** ```bash docker exec -it <container_name> /bin/bash ``` - **说明** - `docker exec`:在运行中的容器中执行命令。 - `-it`:分配一个伪终端并保持 STDIN 打开。 - `<container_name>`:容器名称。 - `/bin/bash`:要执行的命令,进入容器的 `/bin/bash` 终端。 - **示例** ```bash docker exec -it my-nginx /bin/bash ``` 该命令会进入名为 `my-nginx` 的容器的 `/bin/bash` 终端,即使该容器是在后台运行的。 ### 查看容器日志 - **命令** ```bash docker logs <container_name> ``` - **说明** - `docker logs`:查看容器的日志输出。 - `<container_name>`:容器名称。 - **示例** ```bash docker logs my-nginx ``` 该命令会显示名为 `my-nginx` 的容器的日志输出,这对于调试和监控容器的运行状态非常有用。 通过以上方法,你可以灵活地在前台和后台运行容器,并根据需要进入容器内部或查看容器日志。
wwbang
2025年1月9日 18:27
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码