0

我需要能够将我的 linux 容器“npm start”地址绑定到 10.XX.XX.XX,这样我才能从我的主机箱中查看。主机和容器都是 Ubuntu。主机是 Ubuntu 18,容器是 16 Xenial。

我目前正在关注netlify-cms victor-hugo 教程。我的设置是在一个运行 Ubuntu 16 Xenial 的 linux 容器上。npm 工作但是,我无法弄清楚如何将地址绑定到 linux 容器 ip 地址。

我通常可以弄清楚这一点,因为服务器通常会有一个 -b 标志,或者使用某种绑定或主机设置或类似的东西,但我无法弄清楚这一点。我已经对 package.json 文件进行了修改,一些在线示例使用 http-server,但我的 netlify-cms 和 victor-hugo 设置使用“start”:“run-p start:**”。搜索 run-p 示例是空白的。

我对 node.js 和 npm 的经验很少。这是 package.json 设置的一部分

{
  "name": "victor-hugo",
  "version": "1.0.0",
  "description": "Victor Hugo is a Hugo boilerplate for creating truly epic websites!",
  "repository": "netlify/victor-hugo",
  "main": "index.js",
  "scripts": {
    "lint": "eslint src",
    "start": "run-p start:**",
    "start:hugo": "hugo -d ../dist -s site -vw",
    "start:webpack": "webpack-dev-server --config webpack.dev.js",
    "preview": "run-p preview:**",
    "preview:hugo": "npm run start:hugo -- -D -F",
    "preview:webpack": "npm run start:webpack",
    "prebuild": "rimraf dist",
    "build": "npm run build:webpack && npm run build:hugo",
    "build:preview": "npm run build:webpack && npm run build:hugo:preview",
    "build:hugo": "hugo -d ../dist -s site -v",
    "build:hugo:preview": "npm run build:hugo -- -D -F",
    "build:webpack": "cross-env NODE_ENV=production webpack --config webpack.prod.js --hot --inline"
  },
  ...
}

我需要能够浏览到 10.XX.XX.XX 才能查看我的内容。

4

2 回答 2

1

在您的webpack.dev.js文件中,可能有如下部分:

devServer: {
  ...,
  ...,
  host: '10.XX.XX.XX',
  port: 80,
}

或者您可以更改 webpack-dev-server 命令以允许主机:

"start:webpack": "webpack-dev-server --config webpack.dev.js --allowed-hosts example.com",

不确定是否可以使用 IP 地址代替 example.com,但值得一试。

于 2019-03-05T00:46:48.680 回答
1

不确定这是否仍然有意义,但我想将地址绑定到0.0.0.0(因为我在 Docker 容器中运行 npm)并且它通过在选项中设置--host选项对我有用start:webpack,如下所示:

"start:webpack": "webpack-dev-server --config webpack.dev.js --host 0.0.0.0"

希望这仍然可以帮助某人

于 2020-05-09T09:26:11.363 回答