从webpack 2使用webpack-dev-server在Docker容器中后端api代理请求

我试图代理我的http请求来表示服务器运行在后端使用docker集装箱,但我在浏览器控制台中获取HTTP 504,并在dockerterminal

HPM] Error occurred while trying to proxy request /api/getData from localhost:8080 to http://localhost:3001 (ECONNREFUSED) (https://nodejs.org/api/errors.html#errors_common_system_errors) 

这是我的docker-compose.yml文件

 app: build: . ports: - "8080:8080" links: - back back: build: ./server ports: - "3001:3001" 

我也有每个容器2个docker文件要在一个容器中运行webpack-dev-server 2我有以下Dockerfile

 FROM node WORKDIR /usr/src/app ADD . /usr/src/app RUN npm install CMD ["npm", "run","dev"] 

和我的Dockerfile运行容器有我的快递服务器是

 FROM node WORKDIR /usr/src/app ADD . /usr/src/app RUN npm install EXPOSE 3001 CMD ["npm", "run","serve"] 

请使用webpack 2版本并运行webpack-dev-server来查找我的webpack.config.js的代码片段

 //.... all required dependency for webpack devServer: { host:'0.0.0.0', contentBase: path.join(__dirname, "dist"), compress: false, proxy: { "/api": { "target": "http://0.0.0.0:3001", "secure": false }, }, hot:true }, devtool: 'inline-source-map', // ...all required plugins and moduloes for compiling my app 

我使用以下命令在package.json中运行我的应用程序

 "scripts": { "serve": "nodemon server/server.js --ignore components", "dev": "webpack-dev-server", } 

我还提到了使用webpack 1的下面的链接,但是webpack2现在没有logging链接中列出的参数。 另外我尝试使用额外的参数,但它没有工作。

因此,webpack 2提供任何更改Origin参数来代理一个请求,因为我认为webpack dev服务器正在考虑起源相同,没有changeOrigin参数在webpack 1。

任何帮助将不胜感激。

提前致谢。

只需发布答案,以便可以用于像我这样的人。 我代理我的请求容器名称,而不是本地主机内的webpackconfiguration。 小愚蠢mistakr,但我花了整个时间弄清楚。

  proxy: { "/api": { "target": "http://back:3001", //back is the service name in which my node server is running. refer docker-compose.yml "secure": false }, },