简单说一下如何获取最新的nodejs docker镜像,从而实现随时随地获取nodejs最新开发环境。
我以前曾经在docker里面搭建了nodejs环境,这样的好处就是实现了环境一次搭建可以多次使用的问题。相应的镜像文件可以供多人使用,还是非常的方便。但是由于nodejs的更新速度非常之快,最近我在使用nodejs接入AWS的IOT时候发现,一年多以前的nodejs环境已经不好用了,我使用npm update -g命令进行更新,发现更新时候出现了很多错误,其中应该是出现了大版本更新而导致版本不兼容的问题,总是解决这些错误会花费很长时间。我准备到nodejs官网下载源码进行编译的时候,发现nodejs提供了相应的docker镜像,这里。这样,事情就变的简单了。既然nodejs官方提供了镜像,那么这个镜像的更新就是有人定期进行维护,就能够保持是最新的nodejs版本。 而且提供的是docker镜像,因此随时随地可以拿来使用。
启动docker,service docker start,使用docker search node命令发现第一个便是官方提供的镜像,见下:
[root@myhost connect_device_package]# docker search node
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/node Node.js is a JavaScript-based platform for... 5174 [OK]
docker.io docker.io/mhart/alpine-node Minimal Node.js built on Alpine Linux 341
docker.io docker.io/nodered/node-red-docker Node-RED Docker images. 125 [OK]
docker.io docker.io/iojs io.js is an npm compatible platform origin... 124 [OK]
docker.io docker.io/prom/node-exporter 58 [OK]
docker.io docker.io/digitallyseamless/nodejs-bower-grunt Node.js w/ Bower & Grunt Dockerfile for t... 42 [OK]
docker.io docker.io/readytalk/nodejs Node.js based off the official Debian Whee... 40 [OK]
docker.io docker.io/kkarczmarczyk/node-yarn Node docker image with yarn package manage... 38 [OK]
docker.io docker.io/circleci/node Node.js is a JavaScript-based platform for... 35
docker.io docker.io/bitnami/node Bitnami Node.js Docker Image 27 [OK]
docker.io docker.io/iron/node Tiny Node image 26
docker.io docker.io/calico/node 15 [OK]
docker.io docker.io/nodesource/trusty The Official NodeSource Docker Images 13
docker.io docker.io/appsvc/node Azure App Service Node.js dockerfiles 10 [OK]
docker.io docker.io/cusspvz/node ? Super small Node.js container (~15MB)... 8 [OK]
docker.io docker.io/mc2labs/nodejs CoffeScript and Supervisor powered Nodejs ... 7 [OK]
docker.io docker.io/resin/raspberry-pi-alpine-node Node.js is a JavaScript-based platform for... 6
docker.io docker.io/basi/node-exporter Node exporter image that allows to expose ... 5 [OK]
docker.io docker.io/jprjr/stackbrew-node A stackbrew/ubuntu-based image for Docker,... 2 [OK]
docker.io docker.io/ppc64le/node Node.js is a JavaScript-based platform for... 2
docker.io docker.io/nodecg/nodecg Create broadcast graphics using Node.js an... 1 [OK]
docker.io docker.io/resin/artik710-node Node.js is a JavaScript-based platform for... 1
docker.io docker.io/appsvctest/node node build 0 [OK]
docker.io docker.io/camptocamp/node-collectd rancher node monitoring agent 0 [OK]
docker.io docker.io/myob/node Base node.js image
使用docker pull node命令拉取镜像,大概670M,速度较慢,我用了一个小时才pull完毕。 docker images 命令发现images如下:
[root@myhost connect_device_package]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/node latest 993f38da6c6c 3 days ago 676.7 MB
docker.io/centos latest 36540f359ca3 8 months ago 192.5 MB
使用如下命令生成容器,同时将宿主主机的/home/data/mynodejs映射至docker的/home/myworkspace 目录,将ssh 22端口映射为9022端口 。
docker run -d -i -t -p 9022:22 --privileged=true -v /home/data/mynodejs:/home/myworkspace --name mynodejs2 docker.io/node
root@myhost connect_device_package]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b102f9b9629d docker.io/node "node" 14 hours ago Up 14 hours 0.0.0.0:9022->22/tcp mynodejs2
进入容器并执行脚本:
[root@myhost connect_device_package]# sudo docker exec -it b1 /bin/sh
# ls
bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
#
# ./start.sh
Running pub/sub sample application...
connect
这时候就可以使用最新的nodejs进行开发了。
本文为优快云村中少年原创文章,转载记得加上小尾巴偶,博主链接这里。
本文介绍如何通过Docker获取最新的Node.js开发环境。详细步骤包括搜索和拉取官方Node.js镜像,并通过示例展示如何运行容器及映射宿主机目录。
1474

被折叠的 条评论
为什么被折叠?



