Tag: node.js

启动节点docker容器以便从VS Code进行debugging

VS Code使用本地安装版本的节点进行debugging。 我的问题是是否有可能在Docker容器中使用节点。 我已经find了几个关于如何使用vscode提供的远程debugging方法进行的参考。 这似乎是非常接近我所期待的。 但是,我不想从外部启动容器。 我的例子是来自vscode文档的简单的hello世界。 我真的很想简单地按下启动button,并开始debugging,而没有本地安装的节点版本。

创build自定义的Docker镜像

我试图了解如何创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 = […]

meteor运行服务器获取错误:“找不到绑定文件。 bcrypt ”

问题 我尝试在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 […]

如何在Docker容器中运行无头浏览器testing

我有一个使用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. 我怎样才能找出问题所在?

来自envvariables节点js的API HOST名称

我有一个反应的应用程序,我需要从环境中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 任何帮助将非常感激

如何正确处理docker中的.env文件

我有一个节点应用程序使用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: […]

在开始我的项目之前,我首先需要docker环境吗?

我将在Linux上使用Node.js和PostgreSQL。 我读了很多关于docker工作的实际情况。 仍然我不确定是开始我的项目之前所需的docker环境,或者我可以在项目完成后使用docker工人?

在AWS上远程debuggingNodeJS容器

在EC2实例上运行一个NodeJS Docker容器,我试图远程debugging它,但不断从实例中获得“连接被拒绝”。 我试过 – 打开EC2安全组中的端口 公开Dockerfile中的端口,应用程序正在侦听的端口以及debugging端口 在Docker运行命令中使用-p标志转发端口 确保应用程序可以直接通过它configuration监听的端口进行访问 尝试所有这些之后,远程debugging程序甚至telnet仍然无法访问debugging端口。 任何想法可能导致这一点?

在docker上运行meteor的错误

我刚刚在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-compose的docker集装箱中的节点检查员

我觉得我已经接近了将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 […]