Docker Create 命令详解

DockerBeginner
立即练习

介绍

Docker 是一个用于开发、交付和运行应用程序的流行平台。docker create 命令用于从镜像创建一个新容器。在本挑战中,你将通过实际操作,逐步掌握如何使用 docker create 命令来构建新容器。

这是一个「挑战」项目,它与「引导实验」不同。你需要尝试独立完成挑战任务,而不是按照实验步骤一步步学习。挑战通常具有一定的难度。如果你感到困难,可以与 Labby 讨论或查看解决方案。历史数据显示,这是一个 初学者 级别的挑战,通过率为 96%。它在学习者中获得了 100% 的好评率。

从镜像创建容器

在这个子挑战中,你将学习如何使用 docker create 命令从现有镜像创建一个新容器。

目标

  • httpd 镜像创建一个新容器。

示例

以下是你在完成本步骤后应能达到的效果示例:

  1. 打开终端或命令行提示符。
  2. httpd 镜像创建一个新容器。
  • 如果你是第一次输入此命令:
首次创建 Docker 容器
  • 如果这不是你第一次输入此命令:
重复执行 Docker create 命令
  1. 检查容器是否已成功创建。
验证容器创建状态

提示

如果容器名称已被占用,你可以使用 docker rm -f xxx(container-name) 命令将其删除。

需求

  • 你的机器上必须已安装 Docker。
✨ 查看解决方案并练习

为容器命名

在这个子挑战中,你将学习如何使用 --name 选项为容器指定一个自定义名称。

目标

  • httpd 镜像创建一个名为 my-httpd 的新容器。

示例

以下是你在完成本步骤后应能达到的效果示例:

  1. 打开终端或命令行提示符。
  2. httpd 镜像创建一个名为 my-httpd 的新容器。
创建名为 my-httpd 的容器
  1. 检查容器是否已成功创建。
Docker 容器验证

提示

如果容器名称已被占用,你可以使用 docker rm -f xxx(container-name) 命令将其删除。

需求

  • 你的机器上必须已安装 Docker。
✨ 查看解决方案并练习

映射端口

在这个子挑战中,你将学习如何使用 -p 选项进行端口映射。

目标

  • 将宿主机的 8080 端口映射到名为 my-httpd2 容器的 80 端口。

示例

以下是你在完成本步骤后应能达到的效果示例:

  1. 打开终端或命令行提示符。
  2. httpd 镜像创建一个名为 my-httpd2 的新容器,并将宿主机的 8080 端口映射到容器的 80 端口。
Docker 创建容器并映射端口
  1. 检查容器配置中是否包含宿主机端口映射信息。
容器端口映射检查

提示

如果容器名称已被占用,你可以使用 docker rm -f xxx(container-name) 命令将其删除。

需求

  • 你的机器上必须已安装 Docker。
✨ 查看解决方案并练习

设置环境变量

在这个子挑战中,你将学习如何使用 -e 选项设置环境变量。

目标

  • 在名为 my-httpd3 的容器中,将 NGINX_HOST 环境变量设置为 example.com

示例

以下是你在完成本步骤后应能达到的效果示例:

  • 打开终端或命令行提示符。
  • httpd 镜像创建一个名为 my-httpd3 的新容器,并在容器中将 TEST-ENV 环境变量设置为 test-value
创建带有环境变量的容器
  • 检查容器配置中是否包含该环境变量。
验证容器环境变量

提示

如果容器名称已被占用,你可以使用 docker rm -f xxx(container-name) 命令将其删除。

需求

  • 你的机器上必须已安装 Docker。
✨ 查看解决方案并练习

挂载数据卷

在这个子挑战中,你将学习如何使用 -v 选项挂载数据卷。

目标

  • 将宿主机的 /var/www 目录挂载到名为 my-httpd4 容器内的 /usr/share/nginx/html 目录。

示例

以下是你在完成本步骤后应能达到的效果示例:

  1. 打开终端或命令行提示符。
  2. httpd 镜像创建一个名为 my-httpd4 的新容器,并将宿主机的 /var/www 目录挂载到容器的 /usr/share/nginx/html 目录。
创建带有数据卷挂载的容器
  1. 检查容器中是否已正确配置数据卷挂载。
验证容器数据卷挂载

提示

如果容器名称已被占用,你可以使用 docker rm -f xxx(container-name) 命令将其删除。

需求

  • 你的机器上必须已安装 Docker。
✨ 查看解决方案并练习

总结

在本挑战中,你学习了如何逐步使用 docker create 命令来创建新容器。你掌握了如何从镜像创建容器、为容器命名、映射端口、设置环境变量以及挂载数据卷。凭借这些技能,你可以灵活地创建和配置容器,以便在 Docker 中运行你的应用程序。