docker中安装 NodeJS的两种方式

5,072 阅读3分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

docker中安装 NodeJS的两种方式
Jack Lee 的 个人博客
邮箱 :291148484@163.com
作者主页

掘金juejin.cn/user/113073…

CSDN 主页blog.csdn.net/qq_28550263…


1. 方式一:直接从Docker Hub 拉去NodeJS镜像

2. 方式二:自己构建特定版本


1. 方式一:直接从Docker Hub 拉去NodeJS镜像

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,是一个让 JavaScript 运行在服务端的开发平台。

在Docker Hub中搜索关键字: registry.hub.docker.com/search?q=no…,可以看到确实已经有做好的docker镜像: 在这里插入图片描述

可以通过 Sort by 查看其他版本的 Node,默认是最新版本 node:latest。其中latest为镜像的标签(tag),拉取改镜像的命令如下:

docker pull node:latest

你也可以使用其他的标签,不同标签主要对应于不同的 Node 版本,在registry.hub.docker.com/_/nodeSupported tags and respective Dockerfile links部分可以看到支持的标签。

你也可以在NodeJS docker 的 GitHub 上了解更多相关内容:github.com/nodejs/dock…

2. 方式二:自己构建特定版本

2.1 拉取一个系统镜像

免费的 CentOS 就要落下帷幕,虽然在使用方式上大同小异,但还是不建议继续使用 centOS。除非... 我们这里选择使用 Ubuntu 系统作为示范。 通过执行以下命令拉取一个最新的ubuntu系统docker镜像:

sudo docker pull ubuntu:latest

2.2 运行镜像为docker容器

这里你可能需要看一下你的镜像ID,使用以下方式查看当前的镜像

sudo docker images

你可以使用两种方式运行镜像为容器,一个是使用 docker desktop ,如果你使用的是 Windows 或者 mac 系统。打开 Docker Desktop : 在这里插入图片描述 进入 Image 页面查看镜像: 在这里插入图片描述 选择需要使用的一个镜像,将鼠标移动到其上方。这里我们选择使用预先拉取的 ubuntu 镜像: 在这里插入图片描述

点击 RUN,这相当于使用命令docker run 在这里插入图片描述 点击下拉按钮,可以填写相关参数,如容器名等: 在这里插入图片描述

在这里插入图片描述 成功后,进入containers/apps(容器)界面可以看到新创建的容器: 在这里插入图片描述 显示绿色表示该docker容器正处于运行状态。将鼠标移动到其上方,并点击红圈位置图标,可以在命令行窗口打开进入该容器。相当于使用了exec命令: 在这里插入图片描述 在这里插入图片描述

另外一种方法是直接使用命令的方法。使用这中方法创建一个容器,在博文blog.csdn.net/qq_28550263…中有更多的说明,读者可以参考之。

2.3 安装特定版本的 Node.js

进入上一节你所创建的容器后,就可以开始安装你想安装的 Node.js 了,不同版本的 Node.js 的安装方式基本相同,详细命令如以下各个小节:

2.3.1 Node.js LTS (长期支持版) (写作时为版本v16.x)

curl -fsSL https://deb.nodesource.com/setup_lts.x | bash -
apt-get install -y nodejs

2.3.2 Node.js 当前最新版本 (写作时为v17.x)

curl -fsSL https://deb.nodesource.com/setup_current.x | bash -
apt-get install -y nodejs

2.3.3 Node.js v17.x 版本

curl -fsSL https://deb.nodesource.com/setup_17.x | bash -
apt-get install -y nodejs

2.3.4 Node.js v16.x 版本

curl -fsSL https://deb.nodesource.com/setup_16.x | bash -
apt-get install -y nodejs

2.3.5 Node.js v14.x 版本

curl -fsSL https://deb.nodesource.com/setup_14.x | bash -
apt-get install -y nodejs

2.3.6 Node.js v12.x 版本

curl -fsSL https://deb.nodesource.com/setup_12.x | bash -
apt-get install -y nodejs

2.3.7 说明

在 docker 中安装 Node.js 与在原始的 Ubuntu 镜像中略有不同,以上安装都没有使用 sudo 命令,因为 docker 容器中都是管理员权限,不需要 sudo 命令,这倒是与以管理员身份运行的原始 Debian 一样。因此如果你不在 docker 的 ubuntu 系统容器而是真实的Ubuntu系统中时,以安装 Node.js LTS 为例,命令将是如下这样的:

sudo curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs

2.4 测试你的安装

要测试安装是否正常(并且安装脚本是否正常工作!),请使用:

curl -fsSL https://deb.nodesource.com/test | bash -