VS Code使用本地安装版本的节点进行debugging。 我的问题是是否有可能在Docker容器中使用节点。 我已经find了几个关于如何使用vscode提供的远程debugging方法进行的参考。 这似乎是非常接近我所期待的。 但是,我不想从外部启动容器。 我的例子是来自vscode文档的简单的hello世界。 我真的很想简单地按下启动button,并开始debugging,而没有本地安装的节点版本。
我试图了解如何创build一个自定义图像。 我正在研究node.js中的应用程序,并使用catdoc从文本文件中提取文本。 我确实通过dockerhub把办公室的node.js映像拉了下来: git pull node 并通过命令运行映像: docker run -p 8080:3000 -v $(PWD):/my-app -w "/my-app" node npm start 我的应用程序打开一个调用catdoc的child_process,但它不工作,显然是因为它是一个node.js图像,所以我试着: docker exec <node_container_id> apt-get install catdoc 这返回: Reading package lists… Building dependency tree… Reading state information… E: Unable to locate package catdoc 我试图了解…这个图像没有Ubuntu的,所以我想“我将下载的Ubuntu和Node.js与catdoc那里”…但是,好…不起作用: docker exec <ubuntu_container_id> apt-get node 返回: rpc error: code = 2 desc = […]
问题 我尝试在Docker镜像中运行Meteor服务器应用程序。 运行主文件启动服务器会导致错误,请参阅下面的详细信息: Could not locate the bindings file. (我的系统:Macbook Pro,OSX 10.11.4) 题 有没有人有一个想法如何解决这个错误? 不成功的尝试来解决问题 按照这里所build议的运行npm rebuild不起作用 Nick Bull的build议:运行npm install –unsafe-perm node-gyp npm install –unsafe-perm libxmljs和npm install –unsafe-perm libxmljs不起作用。 两者都在/home/build/bundle/programs/server的docker容器中执行。 (由于–unsafe-perm root权限, 需要使用–unsafe-perm标志) 细节 Dockerfile (灵感来自meteorhacks / meteord ) FROM debian:wheezy ENV sourcedir /home/source ENV builddir /home/build RUN mkdir ${sourcedir} && mkdir ${builddir} RUN apt-get […]
我有一个使用chimp运行摩卡testing的node.js应用程序,在我的本地操作系统中运行时,它正常工作。 它使用Google Chrome进行UItesting。 目前,我是dockerizing这个应用程序…但是,我不确定我需要什么来运行在浏览器方面的uitesting。 我使用了https://github.com/workflow/docker-chimp/blob/master/Dockerfile中的一些命令来安装无头Chrome浏览器。 我的testing在“最终”挂钩上失败…但我不知道这是什么,也不知道为什么会发生。testing通常在主机操作系统中运行。 > pluto_integ_test@1.0.0 test /PlutoD2D/itest > chimp –mocha [chimp] Running… 1) "before all" hook 0 passing (1m) 1 failing 1) "before all" hook: Error: timeout of 60000ms exceeded. Ensure the done() callback is being called in this test Mocha failed npm ERR! Test failed. See above for more details. 我怎样才能找出问题所在?
我有一个反应的应用程序,我需要从环境中dynamic传递API主机名(docker run –env API_HOST=localhost ) 我正在用一个subprocess运行'node node.js' //run npm install then node app cp.spawn('npm install' ,{cwd:NODE_APP_FOLDER,env:process.env}, function(error, stdout, stderr) { if (error) { console.error(`exec error: ${error}`); return; } var server = cp.spawn('node', ['app.js'], { cwd: NODE_APP_FOLDER, env: { API_HOST:'localhost' } }); } 但在我的代码内的应用程序process.env.API_HOST返回undefined 任何帮助将非常感激
我有一个节点应用程序使用dotenv跟踪envvariables。 它使用根文件夹中的.env文件来获取运行时的variables。 问题是当我使用docker来build立一个节点的图像下面的行复制.env文件的构build以及 FROM node:latest # Create app directory RUN mkdir -p /usr/src/app WORKDIR /usr/src/app # Install app dependencies COPY package.json /usr/src/app/ RUN npm install # Bundle app source COPY . /usr/src/app EXPOSE 8000 如果我build立从dockerhub拉图像。 该文件已经包含我在开发中使用的.env文件。 理想情况下,我想为生产指定一个不同的.env文件。 (也许在生产服务器上手动创build一个新的.env文件) 我试图在.env中指定.env文件。 但行COPY . /usr/src/app COPY . /usr/src/app似乎仍然复制env文件。 我不需要像这样使用dotenv 。 我试着像下面那样指定它 version: '2' services: node: container_name: node build: […]
我将在Linux上使用Node.js和PostgreSQL。 我读了很多关于docker工作的实际情况。 仍然我不确定是开始我的项目之前所需的docker环境,或者我可以在项目完成后使用docker工人?
在EC2实例上运行一个NodeJS Docker容器,我试图远程debugging它,但不断从实例中获得“连接被拒绝”。 我试过 – 打开EC2安全组中的端口 公开Dockerfile中的端口,应用程序正在侦听的端口以及debugging端口 在Docker运行命令中使用-p标志转发端口 确保应用程序可以直接通过它configuration监听的端口进行访问 尝试所有这些之后,远程debugging程序甚至telnet仍然无法访问debugging端口。 任何想法可能导致这一点?
我刚刚在Docker上开始了一个meteor项目。 当meteor npm install后它运行meteor ,会出现这个错误 [[[[[ /var/app ]]]]] => Started proxy. /root/.meteor/packages/meteor-tool/.1.4.1_1.139xb76++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/isopackets/ddp/npm/node_modules/meteor/promise/node_modules/meteor-promise/promise_server.js:165 throw error; ^ Error: EPROTO: protocol error, symlink '/root/.meteor/packages/meteor-tool/.1.4.1_1.139xb76++os.linux.x86_64+web.browser+web.cordova/mt-os.linux.x86_64/dev_bundle/server-lib/node_modules' -> '/var/app/.meteor/local/.build677392.build/programs/.build850480.server/node_modules' at Error (native) 为了logging,我在Win 10上通过virtualbox运行docker。似乎问题是关于创build符号链接失败,但是我已经安装了相同的virtualbox扩展包版本,并且已经在我的virtualbox上启用了共享文件夹的符号。 还有什么其他可能性导致这个问 UPDATE 正如在这个build议把–no-bin-links到meteor npm install没有任何作用。
我觉得我已经接近了将docker组合和节点检查器很好地结合在一起,但如果有人能告诉我他们如何设置docker组合文件以及如何工作的解释,我会感到非常满意。 这里是我的compose.yml文件,只是在其中的节点应用程序的样子: app: image: my-node-app volumes: – '~/mycode:/app/code' ports: – "3000:3000" command: /bin/bash 另外请注意,我正在使用Docker for Mac。 (虽然我不认为应该改变很多..) 我find了几个教程来获取如何去做,但是信息已经过时或者看起来不完整。 这里有两个主要的方法(两者都没有为我工作): 1)来自: https : //github.com/seelio/node-inspector-docker/issues/1 app: image: my-node-app ports: – "3000:3000" command: /bin/bash volumes_from: – code debugger: image: node-debug depends_on: – app # `service` instead of `container` for an easier cold start network_mode: 'service:app' volumes_from: – code […]