在Docker for Windows中的NodeJS5.12.0映像上运行Babel
好吧,过去几天我一直在试图运行,无论我做什么,最终都会出现错误。 这是场景。 我试图在Cory House的redux入门套件上运行一个开发环境基础: https : //github.com/coryhouse/pluralsight-redux-starter
要做到这一点,我做了几件事情:
-
安装Docker for Windows。
-
在“设置”对话框中select“D”作为共享驱动器,并保存我的“Windows 10”凭据,以便Docker可以访问“D”分区。
-
打开一个高架的“PowerShell”。
-
使用docker
docker pull node:5.12.0
命令docker pull node:5.12.0
。 -
使用以下命令创build容器
docker run -it -vd:/temp:/www node:5.12.0 bash
-
从https://github.com/coryhouse/pluralsight-redux-starter中提取package.json,webpack.config.dev.js,.babelrc和.eslintrc,并将它们复制到我的“d:\ temp”文件夹Windows机器。
-
在bash中从根目录切换到“www”。
-
使用
npm install
安装软件包。 -
似乎一切正常安装,除了最后,我收到以下错误信息:
67097 warn optional Skipping failed optional dependency /chokidar/fsevents: 67098 warn notsup Not compatible with your operating system or architecture: fsevents@1.0.14 67099 verbose stack Error: ENOTSUP: operation not supported on socket, symlink '../acorn/bin/acorn' -> '/www/node_modules/acorn-jsx/node_modules/.bin/acorn' 67099 verbose stack at Error (native) 67100 verbose cwd /www 67101 error Linux 4.4.15-moby 67102 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" 67103 error node v5.12.0 67104 error npm v3.8.6 67105 error path ../acorn/bin/acorn 67106 error code ENOTSUP 67107 error errno -95 67108 error syscall symlink 67109 error nospc ENOTSUP: operation not supported on socket, symlink '../acorn/bin/acorn' -> '/www/node_modules/acorn-jsx/node_modules/.bin/acorn' 67110 error nospc This is most likely not a problem with npm itself 67110 error nospc and is related to insufficient space on your system. 67111 verbose exit [ -95, true ]
-
无论如何,我忽略了消息,我进入
npm start
并出现以下错误:npm info it worked if it ends with ok npm info using npm@3.8.6 npm info using node@v5.12.0 npm info lifecycle pluralsight-redux-starter@1.0.0~prestart: pluralsight-redux-starter@1.0.0 > pluralsight-redux-starter@1.0.0 prestart /www > babel-node tools/startMessage.js sh: 1: babel-node: not found
我试过npm list | grep babel
npm list | grep babel
确保babel已经正确安装,看起来好像在那里。 那么这里有什么问题? 请注意,我是Docker,Linux,NodeJS和NPM的新手。
谢谢
有/有同样的问题,不支持符号链接,你可以通过inputnpm install --no-bin-links <package>
来避免它们,但问题是… babel需要符号链接。
最好的解决scheme:摆脱窗户,并得到MAC / Linux
可能的解决scheme:我将尽快尝试使用数字海洋。 创build数字海洋液滴,连接到它,而不使用sym链接,然后连接到泊坞窗,然后在泊坞窗运行你的文件。 所以符号链接将被允许在docker和液滴之间,但不必在你的Windows机器和液滴之间。
如果你尝试这个让我知道,否则我会希望记得回来跟进!
看起来, 共享卷上的Symlinks在Docker for Windows中不受支持 。