介绍
在这个挑战中,你将使用 Docker 镜像。Docker 容器镜像是一个轻量级、自包含的可执行软件包,其中包含运行应用程序所需的一切:代码、运行时环境、系统工具、系统库和设置。
在这个挑战中,你将使用 Docker 镜像。Docker 容器镜像是一个轻量级、自包含的可执行软件包,其中包含运行应用程序所需的一切:代码、运行时环境、系统工具、系统库和设置。
Docker 镜像包含镜像名称和镜像标签,其中镜像名称由仓库地址和镜像标识符组成。在本小节中,你将把他人创建的 Docker 镜像推送到自己的仓库中。
你要将 dockerhub 上的公共 ubuntu 镜像推送到你的私有仓库。
以下是你在完成此挑战后应能达成的示例:
dockerhub 上注册并登录。
ubuntu:22.10 镜像到本地服务器。
ubuntu:22.10 镜像的地址更改为你的仓库地址。


要完成此挑战,你需要:
我们通常使用 nginx 来运行网站等静态应用程序。在本节中,你将构建自己的 Web 镜像。
你的目标是创建一个 Docker 容器镜像,并将一个简单的 Web 应用程序打包到其中,然后使用该镜像启动容器并确保它能正常访问。
以下是你在完成此挑战后应能达成的示例:
/home/labex/Code 目录下创建一个名为 index.html 的新文件,内容为 hello labex。
Dockerfile 的新文件,内容如下
your_dockerhub_id/web:1.1.0 的格式构建你的 Web 镜像。
dockerhub。
your_dockerhub_id/web:1.1.0 启动一个名为 web 的容器,并将端口 80 映射到主机。
curl 命令访问 http://127.0.0.1,并检查输出是否为 hello labex。
要完成此挑战,你需要:
Dockerfile 进行构建Nginx:latestDockerfile 中使用 EXPOSE 命令暴露端口 80创建容器镜像通常涉及两个步骤:
本节将把这两个步骤合并到一个 Docker 文件中,以实现多阶段构建。
为了完成此挑战部分,我们在 https://github.com/joker-bai/go-hello-world.git 准备了一个 Hello World 项目。
你的目标是使用多阶段构建来制作一个容器镜像,并使用该镜像启动一个容器,确保它能正常访问。
以下是你在完成此挑战后应能达成的示例:
在 /home/labex/Code 目录下创建一个 hello-world 目录。

在该目录下创建一个 Dockerfile,内容如下

以 your_dockerhub_id/go-hello-world:1.1.0 的格式构建 Docker 镜像。

将镜像推送到 Docker Hub。

启动一个名为 go-hello-world 的容器,并暴露端口 8080。

访问 http://127.0.0.1:8080 检查是否正常。

要完成此挑战,你需要:
Dockerfile 进行构建恭喜你完成了此挑战的所有内容,现在你已经能够灵活地创建和管理应用程序镜像了。