一次构建静态站点并部署在多个主机上

时间:2019-02-27 09:02:14

标签: javascript static-site docusaurus

我想构建自己的文档,以将其托管在docker容器上的多个脱机环境中。这需要遵循静态网站生成器中的以下关键功能,

  • 使用所有资源(js / css),这些资源在本地托管有静态html文件。
  • 在部署时(启动docker容器时)配置urlbaseUrl

这两种配置可以帮助实现,一次部署到任何地方以及在离线环境中进行构建。

两个问题,

  • 如何在部署时设置u​​rl?
  • 如何将所有资源设置为本地托管?

2 个答案:

答案 0 :(得分:0)

您可能认为您应该在https://{{ baseUrl }}/a.js中写url,并在编译选项中设置baseUrl,实际上您并不需要这样做。

只需使用相对路径,建议您有一个图像标签

  • <img src="somephoto.jpg" />表示文件与当前页面位于同一目录
  • <img src="../somephoto.jpg" />表示文件位于当前页面的上层目录中
  • <img src="/somephoto.jpg" />表示文件位于网站的根目录中

答案 1 :(得分:0)

您将必须编写一个自定义脚本来覆盖其中的siteConfig.js。发生这种情况的高层流程:

  • 运行脚本来替换siteConfig.js中的URL到主机1(replace1.js
  • 运行部署脚本。
  • 运行脚本以替换siteConfig.js中的URL到主机2(replace2.js
  • 运行部署脚本。

package.json的{​​{1}}部分中添加一行:

scripts