Docker Hello World


Docker Hello World

Docker是一个开源的容器化平台,可以将应用程序及其依赖项打包成一个容器,使其在不同的环境中运行。本文将介绍如何在Docker平台上运行一个简单的“Hello World”应用程序。

安装Docker

首先需要在本地计算机上安装Docker。在Windows和MacOS上,可以从Docker官方网站下载并安装 Docker Desktop。在Linux上,可以使用系统包管理器进行安装。

创建"Dockerfile"

“Dockerfile"是用于构建Docker镜像的脚本。在当前项目的根目录下创建一个文件名为"Dockerfile"的文件。将以下内容复制并粘贴到"Dockerfile"中。

# 使用官方的node.js 10版本作为基础镜像
FROM node:10

# 在容器中创建一个工作目录
WORKDIR /app

# 将应用程序文件复制到镜像中的工作目录
COPY . .

# 安装应用程序依赖项
RUN npm install

# 暴露容器内部的3000端口
EXPOSE 3000

# 执行应用程序
CMD ["npm", "start"]

创建应用程序

在当前项目的根目录下创建一个名为"app.js"的文件。将以下代码复制并粘贴到文件中。

const http = require('http');

const hostname = '0.0.0.0';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

构建Docker镜像

打开命令行,并导航到当前项目的根目录。输入以下命令来构建Docker镜像:

docker build -t <镜像名称> .

其中,“<镜像名称>”可以为任何名称,例如“hello-world”。

运行Docker容器

构建完Docker镜像后,可以运行一个新的Docker容器。输入以下命令来运行一个新的Docker容器:

docker run -p 3000:3000 <镜像名称>

其中,“<镜像名称>”应为先前指定的镜像名称。“-p”选项允许端口映射,将Docker容器内部的端口映射到本地计算机的端口。

在浏览器中打开"http://localhost:3000”,应该可以看到一个显示“Hello World”消息的页面。

结论

通过使用Docker,我们可以轻松地将应用程序及其依赖项打包到一个容器中,并在不同的环境中运行。上述步骤提供了创建、构建和运行Docker镜像的基本信息。