Tag: node.js

在Windows域用户的上下文中执行fs命令

我有一个nodejsdocker容器,我将访问一些Windows文件共享。 问题在于,由于缺less域用户权限/上下文,我无法访问共享。 有没有办法用fs命令传递用户凭据? 目前的解决方法是在Windows机器上运行nodejs服务器。 所以脚本获得启动服务器的用户的权限。 我不喜欢这个解决scheme,因为我不能使用泊坞窗。

docker工人:如何在自动化docker文件时参考最新的构build图像

我想使用Docker和Apcera在我的Dockerfile中自动化几行代码(如果需要,还需要docker-compose)。 我的主要问题是,每当我做第一个构build命令,我想接下来的几行代码使用相同的名称作为构build文件。 如果可能的话,自动实例化一个不同的名称,在名称的末尾添加1(即john1,john2,john3) Dockerfile: FROM 10.118.226.131:5000/node:8.5.0-wheezy ENV http_proxy=http://www-proxy.abc:3111/ RUN apt-get update WORKDIR /usr/src/app ENV http_port 9089 COPY package.json package-lock.json /usr/src/app/ COPY . . EXPOSE 9089 #CMD ["npm", "start"] 目前在putty ssh中应用: docker build -t 10.118.226.131:5000/<name> . docker tag 10.118.226.131:5000/<name> localhost:5000/<name> docker push localhost:5000/<name> go to /home/letmein/apc —> ./apc docker run <name> -ae -image http://10.118.226.131:5000/<name> ./apc job […]

Nginx代理导致错误:getaddrinfo EAI_AGAIN

在尝试为我的项目设置Docker容器时遇到了一个错误,我不明白。 我的设置涉及多个运行在不同容器中的Node.js应用程序,以及一个nginx代理服务器来处理所有传入应用程序的stream量。 我的nginx代理如下所示: server { listen 80; server_name "~^(?<service>\w{1,}+)\-?\w*\.something\.com$"; location / { resolver 127.0.0.11; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass_request_headers on; proxy_pass http://$service:8081; } } 这使用RegEx从URL中获取服务器名称,并将stream量代理到端口8081上正确的服务器,该服务器似乎正常工作。 应用程序正在成功路由。 当我的Node.js应用程序尝试向REST API发出外部http请求并引发以下错误时,会发生此问题 { Error: getaddrinfo EAI_AGAIN dev.something.com:443 at Object.exports._errnoException (util.js:1020:11) at errnoException (dns.js:33:15) at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:76:26) code: 'EAI_AGAIN', errno: 'EAI_AGAIN', syscall: 'getaddrinfo', […]

Dockerangular度实例无法从Docker express实例获取数据

通过Docker撰写我build立了一组图像。 其中,有一个node.js / express服务器和一个angularjs 2.0前端。 这是docker-compose文件: version: "3.3" services: angular: image: micheleminno/angular-client:latest build: ./angular-client ports: – "4200:4200" express: image: micheleminno/express-server:latest build: ./express-server depends_on: – mysql – elasticsearch ports: – "3000:3000" networks: – sql – nosql elasticsearch: build: elasticsearch/ ports: – "9200:9200" – "9300:9300" networks: – nosql environment: – MAX_OPEN_FILES=1048576 cap_add: – IPC_LOCK ulimits: memlock: soft: […]

Dockerfile无法与dynamic生成的文件进行交互

我有一个dockerfile应该安装并运行两个应用程序。 一个安装在/ app / app1中,并使用pm2执行。 这工作绝对好。 第二个应用程序是第一个应用程序的依赖项。 它使用'npm install'进行安装,所以它进入/ app / app1 / node_modules / app2。 我想在第二个应用程序上执行pm2,该应用程序需要我在启动之前更改工作目录。 当我做到以下几点: cd node_modules/app2 && pm2-docker start app.js 我得到以下错误: ERROR: Cannot start service foo: oci runtime error: container_linux.go:265: starting container process caused "exec: \"cd node_modules/app2 && pm2-docker start app.js\": stat cd node_modules/app2 && pm2-docker start app.js: no such file […]

在Google云容器中pipe理预configuration

我有一个使用Firebase作为数据库的Nodejs,React应用程序。 为了构build应用程序,我正在使用webpack。 我目前正在使用dockerfile,我已经在master分支上build立了一个构build触发器。 这是我目前的设置。 现在,问题在于configurationpipe理。 我想有两个不同的环境,“舞台”和“生产”。 两者都应该指向单独的firebase实例。 在准备构build之前,我怎样才能做到这一点,我可以下载正确的configuration,分段或生产,然后build立容器? 我曾经尝试过: 我有一个docker文件,它在构build之前从google存储中下载configuration文件: FROM node:6.11.1 # Installing yarn and pm2 RUN npm i -g yarn –silent RUN yarn global add pm2 –silent WORKDIR /app COPY . /app # Copy the config files. RUN apt-get update; apt-get install curl RUN curl -sS –fail -o config/config.js https://storage.googleapis.com/envvars-xxx/config.prod.js RUN curl -sS […]

在node:7映像中安装ghostscript4js; 没有findlibgs.so

我目前正在用Docker容器开发一个Web应用程序。 我正在使用一个节点:7基本映像,并安装了与它的依赖关系的ghostscript。 我的项目还包含一个包含所有节点包的package.json。 我需要使用依赖于ghostscript和node-gyp的ghostscript4js,它们都被安装。 在npm安装期间,我得到一个g ++错误: > ghostscript4js@2.0.7 install /usr/src/app/node_modules/ghostscript4js > node-gyp rebuild gyp info it worked if it ends with ok gyp info using node-gyp@3.5.0 gyp info using node@7.10.1 | linux | x64 gyp http GET https://nodejs.org/download/release/v7.10.1/node-v7.10.1-headers.tar.gz gyp http 200 https://nodejs.org/download/release/v7.10.1/node-v7.10.1-headers.tar.gz gyp http GET https://nodejs.org/download/release/v7.10.1/SHASUMS256.txt gyp http 200 https://nodejs.org/download/release/v7.10.1/SHASUMS256.txt gyp info spawn /usr/bin/python2 gyp […]

Docker / GitLab:在docker镜像中安装的npm依赖项,但是通过runner没有得到满足

首先,我正在检查我在gitlab CI中作为docker runner使用的testingdocker镜像: 在Docker容器( testing )中运行这个命令… meteor npm list –depth=0 给了我预期的结果: npm info it worked if it ends with ok npm info using npm@5.4.2 npm info using node@v8.6.0 project@1.0.0 /builds/namespace/project +– autoprefixer@7.1.5 +– babel-runtime@6.26.0 +– bcrypt@1.0.3 +– fluent-ffmpeg@2.1.2 +– gm@1.23.0 +– gridfs-stream@1.1.1 +– react@16.0.0 所以所有的依赖项都安装在docker镜像中。 现在我在我的gitLab CI中使用这个图像: 我的gitLab CI yml文件如下所示: unit: image: testing:latest stage: unit […]

Node Postgres Docker

我尝试使用node.js应用程序来设置Docker,该应用程序使用sequelize连接到postgres。 const sequelize = new Sequelize( process.env.DB_NAME, process.env.DB_USER, process.env.DB_PASS, { host: process.env.DB_HOST, port: process.env.DB_PORT, dialect: 'postgres', }, ); 在我的.env文件中,我声明了所有其他环境variables中的DB_HOST=postgres (这是在docker-conpose.yml中声明的服务的名称)和DB_PORT=5432 。 我的Dockerfile如下所示: FROM node:8.6.0 # Working directory for application WORKDIR /usr/src/app EXPOSE 8080 COPY . /usr/src/app # In this file I create a user and a DB and give him the privlages ADD init.sql /docker-entrypoint-initdb.d/ […]

服务运行,可以通过docker-compose ping但容器A看不到容器B?

我正在运行一个节点应用程序(容器A),通过在Mac上的Docker运行一个快速微服务依赖项(容器B)。 容器A的Dockerfile FROM node WORKDIR /usr/src/app COPY package.json package-lock.json ./ RUN npm install COPY . . EXPOSE 9000 CMD [ "node", "server.js" ] 容器B的Dockerfile FROM node WORKDIR /usr/src/app COPY package.json package-lock.json ./ RUN npm install COPY . . EXPOSE 3000 CMD [ "node", "server.js" ] 泊坞窗,compose.yml version: '3' services: containerA: build: . ports: – '127.0.0.1:9000:9000' […]