Tag: node.js

react-scripts-ts没有在travis中安装ts-jest

我试图用我的Dockerized React应用程序来使用Travis CI,但是每当Travis运行npm test我得到的错误是: Cannot find module 'ts-jest' from 'setupTests.ts' at Resolver.resolveModule (node_modules/react-scripts-ts/node_modules/jest-resolve/build/index.js:179:17) at Object.<anonymous> (src/setupTests.ts:1:103). npm install不会给出任何错误。 完整的堆栈跟踪+构build过程在这里 ,代码在这里 我不确定这是否是React的问题,因为我第一次尝试Docker和Travis,但错误似乎来自react-scripts-ts 。 任何帮助,将不胜感激。

在Docker环境中使用Consul DNS的Http请求

我有一个非常简单的领事和注册人在我的机器上组织运行。 我可以查询在领事登记的服务列表,但我不能使用http打电话给其他服务。 docker构成: version: '2.1' services: consul: image: gliderlabs/consul:latest command: "agent -server -data-dir /tmp/consul -bootstrap -ui -client=0.0.0.0" ports: – 8500:8500 – 8600:8600 – 8400:8400 networks: app_net: ipv4_address: 172.28.0.10 registrator: image: gliderlabs/registrator:latest command: "consul://consul:8500" depends_on: – consul volumes: – /var/run/docker.sock:/tmp/docker.sock networks: – app_net service1: image: solive/service1 ports: – 3000 depends_on: – consul – registrator networks: – […]

用socket.io写入空对象

我目前正在尝试通过与Node.js的Socket.io发送一些信息,但它看起来像我做错了什么,我真的不知道为什么。 我的机器上有一些使用Docker的容器,我为我的应用程序使用了Docker.io节点包,以获得我想要的所有信息。 这是发送数据的服务器端function io.sockets.on('connection', function(socket){ socket.emit('message',container); }); var container = docker.containers.list(handler); function handler(err, res) { if (err) throw err; console.log("data returned from Docker as JS object: ", res); } 这是获取套接字消息的客户端代码 var socket = io.connect('/'); socket.on('message', function(data){ console.log(data); }); 我通过套接字(容器列表看起来像这样)发送的数据: [ { Command: 'top ', Created: 1393878688, Id: 'fa46297fa16ff184673077545437a64f2adaf62db8774be696d76cc9f52b7881', Image: 'ubuntu:12.04', Names: [ '/cranky_archimedes' ], Ports: […]

Docker API:在网页中显示容器日志

我正在使用Appersonlabs的https://github.com/appersonlabs/docker.io中的docker.io包在node.js中使用docker web客户端的项目。 为了构build一个完整的客户端,我想将容器日志stream式传输到一个网页。 这是我使用api的路线: app.get('/containers/:id',function(req,res){ console.log('INSPECT CONTAINER WITH ID '+req.params.id); docker.containers.inspect(req.params.id,function(err,infos){ docker.containers.attach(req.params.id, {stream: true, stdout: true, stderr:false, tty:false}, function(err,stream) { console.log(stream); res.render('containers/show.ejs',{container: infos, name: name, stream: stream}); }); }); }); 但是当我console.logstream我有一堆输出信息的大JSON文件。 根据docker的API,我应该如何继续( http://docs.docker.io/en/latest/reference/api/docker_remote_api_v1.10/#attach-to-a-container ) 实施 实现Attach协议的最简单方法如下: 读取8个字节 根据第一个字节selectstdout或stderr 从最后4个字节中提取帧大小 读取提取的大小并将其输出到正确的输出 转到第一步 题 : 我应该如何着手实现呢? 我真的不知道如何开始。 注意:据我所知,我的http请求是正确的,这里是我从API获得的JSON响应的示例: method: 'POST', path: 'http://localhost:4243/v1.7/containers/8196569ecaaf2bbcf726189b60212676ad1351f6ff4df6ebe9deb4743b52e138/attach?stream=true&stdout=true&stderr=false&tty=false', _headers: [Object],

我无法使用AWS中托pipe的nodejs连接Docker Remote API

我在Amazon Web服务(AWS)中创build了t1.micro实例,并安装了docker.io。 我在SSH客户端执行以下命令“sudo docker -H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock -d&”。 当我试图获取所有图像:myipaddres:4243 / images / json。 我得到“此网页不可用”页面。

当用不同的用户运行容器时,Docker无法在构build中运行

我不知道为什么节点应用程序不运行的具体情况。 基本上我在nodejs应用程序中添加了一个dockerfile,这里是我的Dockerfile FROM node:0.10-onbuild RUN mv /usr/src/app /ghost && useradd ghost –home /ghost && \ cd /ghost ENV NODE_ENV production VOLUME ["/ghost/content"] WORKDIR /ghost EXPOSE 2368 CMD ["bash", "start.bash"] start.bash看起来像这样: #!/bin/bash GHOST="/ghost" chown -R ghost:ghost /ghost su ghost << EOF cd "$GHOST" NODE_ENV={$NODE_ENV:-production} npm start EOF 我通常像这样运行docker: docker run –name ghost -d -p 80:2368 user/ghost […]

具有来自Docker容器的对话的脚本

我有一个docker容器,故意为node.js环境服务。 类似于这篇文章中描述的configuration。 但是我想创build自己的项目。 是否有一种方法来运行npm init并使用容器生成package.json? 如果我运行这个命令,它会在第一个问题上失败。 我如何回答这些问题? 注意:手动创build这个文件不是问题(或使用-y选项),但我认为这个用例说明了更一般的概念 注意:实际上用-y选项来运行这个命令是一种问题。 当你这样做的时候,你有与问题相同的对话框

如何使用Docker部署应用程序

我有一个node.js应用程序依赖于phantom.js。 由于node和phantom.js都不是一件轻而易举的事,所以我创build了一个Docker容器。 现在,我如何将我的应用程序的更新部署到我们的生产服务器上运行的这个docker容器。 对我而言,有两种可能性。 设置SSH并将我的git存储库直接推送到Docker容器中 添加卷并更新容器外的存储库 我倾向于后者,但我不确定是否有更好的方法。 提前致谢!

在Docker容器中安装mongo客户端

我正在使用fig在各种Docker容器中构build和运行我的应用程序,所以这么好。 我有一个容器,我的应用程序和db容器mongo在里面。 但是现在我正尝试连接到mongo服务器,将其与用户和数据库一起播种,而我找不到如何安装mongo客户端。 我的应用程序的图像来自标准dockerfile/nodejs图像,不包括mongo客户端。 尝试RUN mongo只是给错误mongo not found 。 到目前为止所有的文档都涉及到如何在Docker容器中安装mongo server ,到目前为止,我还没有发现如何安装mongo客户端。 我该怎么做呢?

nodejs express在作为docker守护程序运行时不会使用ect模板引擎来呈现html页面

我试图运行一个节点js应用程序,在ECT模板引擎上渲染HTML页面的Docker,情况是,它工作得很好,一旦与下面的命令运行的容器直接交互,并在其中运行节点。 docker run -p 80:5000 -it abdullahshahin/admin-panel bash 但是当我把它作为一个守护进程来运行的时候,express表示下面的错误 错误:无法在视图目录“/ views”中查找视图“索引” 以下是ect的声明 var ectRenderer = ECT({ watch: true, root:'/var/njs/html/views', ext : '.ect' }); 另外,我试过这个 root: __dirname + '/views' and this root:'./views' ,没有什么帮助。 下面是主要的应用程序文件代码,我正在使用这个MVC // DECLARE VARIABLES var express = require('express'); var instance = express(); var parser = require('body-parser'); instance.use(parser({strict:false})); var commander = require('commander'); var ECT […]