by Devin Yang

建立于: 8年前 ( 更新: 8年前 )

前言

进行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设置为别名时,一样有效,可以在任意目录运行。






 

Tags: docker laravel

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


laravel,woops

Laravel 5.5 Woops回来了,让我们来瞧瞧。

Woops是PHP错误处理的框架,在Laravel 4时预载了,但在之后的Laravel 5.0时移除,现在5.5又回来啦.... Whoops的一些功能包括: -灵活的,基於堆栈的错误处理 -使用目前独立函式库不需要依赖关系 -用於处理异常,跟框架及其数据的简单API -包括一个极漂亮错误页面您的网页应用进程内 -包括直接在编辑器和IDE中打开引用的文档的功能 -包括不同响应格式的处理进程(JSON,XML,SOAP) -易於扩展和与现有函式库 -清洁,结构良好且经过验证的代

docker,goaccess,config

phpenv实战GoAccess即实网站解析(docker版)

在开始前我先说一下,GoAcess也能产出静态数据只要您有log,因为我觉的即时感觉比较炫,所以本文将专注在GoAccess即时显示的部分进行介绍。虽然Google Analytics(GA)很好用,但试试另一种GA感觉也很不错,例如您想了解网站使用者用什么浏览器访网站。

laravel storage

我如何用Laravel的Storage的sftp driver同步文件

SFTP的安装及设置不在本篇讨论范围,如果您想了解,建议可以看另一篇https://www.ccc.tc/article/Laravel-SFTP-Driver-Configuration本篇我要用极快速的Sample Demo我如何用自建的artisan的命令同步远程的数据到本地端。或许有人会问为何不用rsync,呀本篇就是要介绍用Storage的方式同步文件。🤪直接看code吧,我在config/filesystems.php设置了一个sftp磁盘叫ccc。