我想构建我的文档以托管在多个离线环境中,托管在 docker 容器上。这需要静态站点生成器中的以下关键功能,
- 使用所有资源(js / css),通过静态 html 文件在本地托管。
- 配置
url
并baseUrl
在部署时(启动 docker 容器时)。
这两种配置可以帮助实现,构建一次部署在任何地方,并且在离线环境中。
两个问题,
- 如何在部署时设置 url?
- 如何将所有资源设置为本地托管?
我想构建我的文档以托管在多个离线环境中,托管在 docker 容器上。这需要静态站点生成器中的以下关键功能,
url
并baseUrl
在部署时(启动 docker 容器时)。这两种配置可以帮助实现,构建一次部署在任何地方,并且在离线环境中。
两个问题,
您可能认为应该在 中写入 url https://{{ baseUrl }}/a.js
,并在编译选项中设置 baseUrl,实际上您不需要这样做。
只用相对路径,建议你有图片标签
<img src="somephoto.jpg" />
表示文件与当前页面位于同一目录中 <img src="../somephoto.jpg" />
表示文件位于当前页面的上层目录<img src="/somephoto.jpg" />
表示文件位于网站的根目录您必须编写一个自定义脚本来覆盖其中siteConfig.js
的内容。这是如何发生的高级流程:
siteConfig.js
运行将 URL 替换到主机 1 ( replace1.js
)的脚本siteConfig.js
运行将 URL 替换到主机 2 ( replace2.js
)的脚本在package.json
中,在该部分中添加一行scripts
:
"scripts": {
...
"deploy-multiple": "./replace1.js && docusaurus-build && ./replace2.js && docusaurus-build",
...
}