Docker 镜像是一种将代码、运行时环境和依赖项打包在一起的轻量级容器。使用 Docker 镜像可以方便地部署和运行应用,特别是在多个环境中。 在本文中,我们将讨论如何使用 TypeScript 编写 Docker 镜像。本文完整示例代码可以在 Github 上找到。
开始之前
首先,我们需要安装 Docker 和 TypeScript。你可以前往官方网站或通过包管理器安装它们。
创建一个名为 typescript-docker
的文件夹,并在该文件夹中创建两个文件:Dockerfile
和 index.ts
。
编写 TypeScript 代码
我们的 index.ts 文件将包含我们要在 Docker 容器中运行的应用程序代码。以下是示例代码:
-- -------------------- ---- ------- ------ ------- ---- --------- ----- --- - --------- ----- ---- - ---- ------------ ----- ---- -- - ---------------- -------- -- ---------------- -- -- - ------------------- ------- -- -------------------------- --
在这里,我们创建了一个简单的 Express.js 应用程序,它会在 localhost:3000
监听。该应用程序将返回“Hello, world!”作为响应。
编写 Dockerfile
现在,我们需要创建一个 Docker 镜像来运行我们的 TypeScript 应用程序。我们需要编写一个 Dockerfile 文件来构建镜像。
-- -------------------- ---- ------- - ------ ---- -------------- - -------- ------- ---- - --------- ---- ------------- -- --- --- ------- - -------- ---- - - - -- ---------- -- --- --- --- ----- - ---- ------ ---- - ------ --- ------- --------
在 Dockerfile 中,我们使用 node:14-alpine
做为基础镜像。在容器中,我们将工作目录设置为 /app
。我们将应用程序依赖项和代码复制到容器中。接下来,我们构建 TypeScript 代码,并将容器端口设置为 3000。最后,我们运行 npm start 命令启动应用程序。
构建 Docker 镜像
现在,我们已经编写了 TypeScript 代码并创建了 Dockerfile。我们可以使用以下命令构建 Docker 镜像:
$ docker build -t typescript-docker .
该命令将使用 Dockerfile 中定义的命令构建一个名为 typescript-docker
的镜像。
运行 Docker 镜像
现在,我们已经构建了 Docker 镜像。我们可以使用以下命令在容器中运行它:
$ docker run -p 3000:3000 typescript-docker
该命令将在本地主机上的端口 3000 上启动 Docker 容器,并将容器端口映射到主机端口。
结论
在本文中,我们学习了如何使用 TypeScript 编写 Docker 镜像。我们学习了如何在 Dockerfile 中设置工作目录、安装应用程序依赖项、复制文件以及运行应用程序。此外,我们还了解了如何在本地计算机上构建和运行 Docker 镜像。Docker 镜像可以极大地简化应用程序的部署和运行,特别适合于多个环境。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/670f78755f5512810264b155