建立于: 6年前 ( 更新: 6年前 )
前言
进行Laravel开发时,有时我们会需要透过npm安装nodejs的包,但是偏偏我们系统中的Node又不够新。或许因某些因素没法升级,例如要跑旧版的nodejs进程等。
其实我们可以透过简单的命令,用docker,让我们就能使用最新版本的node image来挂载host端的/sites数据夹罗。
这么一来我们就可以随时运行新版本的npm命令啦。
docker命令
当我们在dlaravel的数据夹时,运行如下命令:
docker run --rm -v ${PWD}/sites:/sites -w /sites -ti node bash
例如使用LTS版本:
docker run --rm -v ${PWD}/sites:/sites -ti node:8.11.4 node npm -v
请让我来一一进行说明:
run: 用运行一个新的容器。 (Run a command in a new container)
--rm: 容器停止时,自动移除容器。 (Automatically remove the container when it exits)
-v: 绑定挂载一个卷宗。(Bind mount a volume)
这里代表了,主机端的sites数据夹的数据,会在container内的/sites数据夹被看到。
-w: 默认的任务目录,这里设置在/sites,这样我们进入container后,会在/sites的数据夹内,即是D-Laravel的Projects数据夹。
-t: 分配一个伪终端机 (Allocate a pseudo-TTY)
-i: 保持标准输入开启 ( Keep STDIN open even if not attached)
node: 即是我们要使用的image。
bash: 我们要运行在container中的命令。
也就是说,运行上方的命令,我们就可以进入container内罗。
可以输入ls查看project的目录。
进入Laravel的Project目录,
就能轻松的npm install或是npm run dev啦。
D-Laravel命令(v1.6.6版)
确认D-Laravel版本。
./console version
D-Laravel release v1.6.6
进入方式
./console node
更简单吧,而且当您使用./console alias设置为别名时,一样有效,可以在任意目录运行。
No Comment
Post your comment