Tag: docker

如何构build您自己的MeanJS Docker镜像?

我是Docker的新手,我得到了一个任务来创build一个运行我们的平均堆栈应用程序之一的自定义容器。 我使用https://hub.docker.com/_/php/在AWS上创build了自己的简单PHP容器,它可以访问它,但是我只是想知道如何使用Mean栈来实现。 我们在这里的应用程序使用http-server在本地运行 我在网上查看了多个博客/教程,例如: https://nodejs.org/en/docs/guides/nodejs-docker-webapp/ https://blog.giantswarm.io/getting-started-with-docker-and-meanjs/ 但我仍然感到迷失。 有什么build议么?

如何在Docker中执行非全局的npm二进制文件

假设我有下面的Dockerfile WORKDIR $APP_DIR ENTRYPOINT ["npm", "run"] CMD ["start"] start被映射到babel-node bin/server ,其中babel-node是一个nodejs非全局依赖二进制文件(默认安装在$ APP_DIR / node_modules内) 在我的Mac上,没有任何设置,这工作正常。 但是当我在Docker中运行它时,它显示命令没有find,这并不奇怪。 所以相同的命令npm run start在我的主机上工作,但在Docker中。 sh: 1: babel-node: not found error Command failed with exit code 127.

bcrypt和Docker bcrypt_lib.node:无效的ELF头

我在Node.js上看到了一些关于macOS,Docker和bcrypt问题。 这似乎是我的问题最接近的答案,但它没有奏效。 我的Dockerfile : FROM node:6.4.0 COPY . /app RUN ls -la /app WORKDIR /app RUN cd /app; npm install CMD ["node", "index.js"] 我的.dockerignore文件: node_modules 我的package.json依赖关系: "dependencies": { "bcrypt": "1.0.0", } 当启动容器时,我得到这个错误: /app/node_modules/bcrypt/build/Release/bcrypt_lib.node: invalid ELF header 从Dockerfile的ls -la /app命令中,我可以看到node_modules文件夹肯定不是从主机(macOS)复制的: drwxr-xr-x 6 root root 4096 Dec 7 21:29 . drwxr-xr-x 47 root root 4096 Dec 7 […]

docker节点应用程序总是使用nodemon在文件更改上崩溃

我正在使用最新版本的docker和最新的节点映像。 我有一个启动nodemon进程的gulp文件。 我正在使用–inspect标志来表示我想要使用实验性的开发工具debugging器。 但是,当我更改文件时,nodemon会将其选中并重新启动该进程,但会崩溃。 这是我的g task任务: gulp.task('start:dev', done => { let started = false; nodemon({ script: path.join(__dirname, 'index.js'), ext: 'js json', nodeArgs: ['–inspect=0.0.0.0:9229'], watch: path.join(__dirname, 'express'), legacyWatch: true }) .on('start', () => { // to avoid nodemon being started multiple times if (!started) { setTimeout(() => done(), 100); started = true; } }); }); 这里是错误: […]

如何连接到docker集装箱中运行的比特币testing网

我正在testing一些与比特币相关的代码,为了testing它在docker集装箱内安装了bitcoin-testnet-box 。 它运行良好,并且在容器内我可以执行命令并查看结果。 Dockerfile 公开端口19001 ,我将其映射到端口49155作为bitcond实例之一的RPC端口,我试图使用节点比特币与它进行通信。 我写了一个简单的testing,目的只是为了获得目前的困难。 var bitcoin = require('bitcoin'), client = new bitcoin.Client({ host: "192.168.59.103", port: 49155, user: "admin1", pass: "123" }); describe("Core Wallet Functions", function() { it("can get the current bitcoin difficulty", function(done){ client.getDifficulty(function(err, difficulty){ console.log("got response", err, difficulty); expect(err).to.equal(null); expect(difficulty).to.equal(1); done(); }); }); }); 这是失败的( 见下面的更新 )与错误: {[Error:connect ECONNREFUSED] code:'ECONNREFUSED',errno:'ECONNREFUSED',syscall:'connect'} 快速浏览docker […]

docker-compose不能从npm中看到node_modules

我想我不是第一个有这个问题的人,但是我没有看到对我有用的东西。 docker-compose.yml文件 web: build: . volumes: – .:/src ports: – "3000:3000" Dockerfile FROM node:0.12 RUN npm install -g mocha RUN mkdir /src WORKDIR /src ADD package.json /src/package.json RUN npm install COPY . /src EXPOSE 3000 CMD node server.js Aand成功构build后通过docker-compose up运行,我有和错误: web_1 | Error: Cannot find module 'express' web_1 | at Function.Module._resolveFilename (module.js:336:15) web_1 | at […]

NodeJS + Forever + Dockerconfiguration不起作用

我有一个下面的Dockerfile : FROM debian:stable RUN apt-get update && apt-get upgrade -y RUN apt-get install -y curl RUN curl -sL https://deb.nodesource.com/setup_4.x | bash – RUN apt-get install -y nodejs RUN npm install forever -g # App ADD . /api # Install app dependencies RUN cd /api; npm install EXPOSE 8080 CMD ["forever", "start", "/api/index.js", "8080"] 当我尝试运行docker […]

使用intellij远程debuggingnodejs

我试图远程debugging我的nodejs应用程序(实际上运行在我的本地计算机上的docker容器,但出于所有目的被视为远程主机) 我已经在docker-compose文件中使用以下命令使用nodemon运行应用程序 nodemon –debug=3010 app.js 然后打开容器的端口,并使用端口转发使端口在localhost:3010中可用。 之后,我在intellij远程debugging器插件中设置了以下configuration: host: localhost port: 3010 现在,在容器中运行代码时,代码不会停在我的断点上。 我很确定我应该启动我为远程debugging设置的configuration,但是并没有真正看到如何。 我也尝试将远程debugging插件的主机参数设置为docker-machine ip,但是这也没有给出任何结果。 当代码到达我的断点时,我该怎么做才能使intellij停止?

在高山docker上找不到节点

我有以下的Dockerfile: FROM alpine:3.3 RUN apk update \ && apk add curl tar git gzip RUN curl –retry 3 –retry-delay 20 –show-error –location –remote-name –silent "https://nodejs.org/dist/v6.2.0/node-v6.2.0-linux-x64.tar.gz" \ && tar -xzf "node-v6.2.0-linux-x64.tar.gz" -C /usr/local –strip-components=1 –same-owner \ && rm -rf "node-v6.2.0-linux-x64.tar.gz" \ && ls -la /usr/local/bin && env \ && /usr/local/bin/node -v \ && npm cache clear […]

npm作用域包和私有registry

我们公司已经为我们的软件包build立了一个私有的npmregistry。 我们正在尝试设置一个angular2应用程序,并且所有包含的angular度包(从angular2教程页面)都被限定了范围。 问题是,当npm被设置为我们的私人registry,一个npm install给我们这个错误消息: npm ERR! Linux 4.4.8-boot2docker npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" npm ERR! node v4.3.0 npm ERR! npm v2.14.12 npm ERR! code E404 npm ERR! 404 no such package available : @angular/core npm ERR! 404 npm ERR! 404 '@angular/core' is not in the npm registry. npm ERR! 404 You should bug the […]