bobostudio
文章2
标签2
分类2
如何在本地部署自己的 docker 镜像服务

如何在本地部署自己的 docker 镜像服务

在软件开发中,Docker 已经成为了一个非常强大的工具,它可以帮助开发者轻松地打包、分发和部署应用。
下面我们将通过创建一个简单的 Node.js 应用来展示如何在本地环境部署自己的 Docker 镜像服务。

本文使用的环境版本:

  • Docker: 24.0.7
  • Node.js: v20.11.1
  • npm: 10.2.4

第一步:搭建测试服务

首先,我们需要一个服务来做实验。在这里,我们选择的是 Node.js —— 一个轻量级且高效的 JavaScript 运行环境。别急,即便你不是一个 Node.js 开发者,我保证这个过程既简单又有趣!

打开 cmd (是的,就是你的命令提示符),然后输入以下命令:

mkdir demo & cd demo
npm init -y & type nul > index.js

创建了一个新文件夹并在其中初始化了一个新的 Node.js 项目。然后,我们在 index.js 里写入一段小小的程序,用来启动一个简易的 HTTP 服务器:

const http = require('http');

http.createServer((req, res) => {
    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end('Hello Worldn');
}).listen(3000);

现在,如果你运行这段代码,你的电脑就变身为了一台服务器!

第二步:开启 Docker 的世界

有了这个简易的服务,我们就可以开始使用 Docker 了。首先,需要一个 Dockerfile,这是 Docker 用来构建镜像的配方文件。让我们使用下面的内容来填充它:


FROM node:20

WORKDIR /usr/app

COPY package*.json ./

RUN npm install

COPY . .

EXPOSE 3000

CMD ["npm", "start"]

别忘了创建 .dockerignore 文件,以避免将无关的本地文件拷贝到 Docker 镜像中:


node_modules
npm-debug.log
.env

第三步:打包与运行

现在让我们把这些配置包装起来:

docker build -t bobostudio/local-api:v1 .

如果魔法生效,就会看到 Docker 开始构建我们的镜像。完成之后,运行:

docker run -d --name local-api-demo -p 3000:3000 bobostudio/local-api:v1

-d 后台运行服务
–name 新建的实例名称
-p 端口映射,暴露外部的端口
bobostudio/local-api:v1 已经打包好的镜像

这条命令会让你的应用浮现于 Docker 容器之中,无论机器上安装了什么,只要有 Docker,你的应用都会按预想的方式运行。

让我们来核查一下服务

访问你的服务器 http://localhost:3000,迎接你的将是熟悉的 “Hello World”。

总结

就是这样!利用 Docker,我们搭建了一个简单的 Node.js 服务,并通过映容器内的端口来向外界展示。你学到了基础的 Dockerfile 编写技巧,掌握了如何在 Docker 中构建和部署自己的服务。

只要跟随几个简单的步骤,你也可以在 Docker 的宏大世界中创造出你自己的服务。快去尝试吧


本文作者:bobostudio
文章来源:原创
本文链接:http://bobostudio.top/2024/04/15/docker-run-a-server-in-local/
版权声明:本文采用 CC BY-NC-SA 4.0 协议进行许可