webpack 0.0.0.0 docker无法正常工作

时间:2018-01-10 16:27:24

标签: django docker webpack docker-compose webpack-dev-server

我正在使用docker-compose在0.0.0.0:80提供django,在0.0.0.0:3000提供webpack-dev-server。它们都在0.0.0.0

完美运行

我也有域绑定到我的外部IP,我甚至可以从这个域访问django。但不知何故,我无法通过外部IP或域访问webpack-dev-server。

以下是一些其他数据:

搬运工-compose.yml

web:
 build: backend/
 command: sh dockerfiles/init.sh
 ports:
     - 0.0.0.0:80:80

js:
 build: webclient/
 command: yarn runserver
 ports:
     - 0.0.0.0:3000:3000

如你所见,他们在这里的服务方式相同

server.js

new WebpackDevServer(
        webpack(config),
        {
            publicPath: config.output.publicPath,
            hot: true,
            historyApiFallback: true,
            allowedHosts: [
                '0.0.0.0',
                'localhost',
                'DOMAIN',
                '*.DOMAIN'
            ],
            headers: {
                "Access-Control-Allow-Origin": "*"
            }
        }
    ).listen(3000, '0.0.0.0', function (err, result) {
        if (err) {
            console.log(err)
        }
        console.log('Listening at 0.0.0.0:3000')
    })

当我ping端口0.0.0.0:3000时 - 端口已打开。当我ping DOMAIN:3000时 - 端口关闭。

你有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您需要使用disableHostCheck { publicPath: config.output.publicPath, hot: true, historyApiFallback: true, disableHostCheck: true, // <------ here is the missing piece allowedHosts: [ '0.0.0.0', 'localhost', 'DOMAIN', '*.DOMAIN' ], headers: { "Access-Control-Allow-Origin": "*" } }