docker中安装 NodeJS的两种方式
jcLee95 的 个人 博客
已入驻阿里云博客
邮箱 :291148484@163.com
本文地址:
- https://developer.aliyun.com/article/
- https://blog.csdn.net/qq_28550263/article/details/124256323
1. 方式一:直接从Docker Hub 拉去NodeJS镜像
1. 方式一:直接从Docker Hub 拉去NodeJS镜像
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,是一个让 JavaScript 运行在服务端的开发平台。
在Docker Hub中搜索关键字: https://registry.hub.docker.com/search?q=node,可以看到确实已经有做好的docker镜像:
可以通过 Sort by 查看其他版本的 Node,默认是最新版本 node:latest。其中latest
为镜像的标签(tag),拉取改镜像的命令如下:
docker pull node:latest
你也可以使用其他的标签,不同标签主要对应于不同的 Node 版本,在https://registry.hub.docker.com/_/node的 Supported tags and respective Dockerfile links部分可以看到支持的标签。
你也可以在NodeJS docker 的 GitHub 上了解更多相关内容:https://github.com/nodejs/docker-node
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
命令:
另外一种方法是直接使用命令的方法。使用这中方法创建一个容器,在博文https://blog.csdn.net/qq_28550263/article/details/124252887中有更多的说明,读者可以参考之。
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 -