Zola 只有 4 个命令:init
、build
和serve
。check
您可以通过运行查看整个程序的帮助zola --help
,通过运行查看特定命令的帮助zola <cmd> --help
。
在询问一些基本配置问题后,在给定目录中创建 Zola 使用的目录结构。在这些提示期间所做的任何选择都可以通过修改 轻松更改config.toml
。
$ zola init my_site
$ zola init
如果该my_site
目录已经存在,Zola 只会在它只包含隐藏文件时填充它(忽略点文件)。如果没有my_site
传递参数,Zola 将尝试填充当前目录。
如果您想尝试填充一个非空目录并且很勇敢,您可以使用zola init --force
. 请注意,这不会覆盖现有的文件夹或文件;在这些情况下,你会得到一个File exists (os error 17)
错误或类似的错误。
您可以直接从新文件夹中初始化 git 存储库和 Zola 站点:
$ git init
$ zola init
这将在该目录中构建整个站点public
(如果该目录已存在,则将其删除)。
$ zola build
base_url
您可以通过将新 URL 传递给标志来覆盖配置base-url
。
$ zola build --base-url $DEPLOY_URL
这在您想要将站点的预览部署到动态 URL 时非常有用,例如 Netlify 部署预览。
public
您可以通过将另一个值传递给标志来覆盖默认输出目录output-dir
。如果该目录已经存在,会提示用户是否替换该文件夹;您可以通过传递 --force 标志来覆盖此提示。
$ zola build --output-dir $DOCUMENT_ROOT
你可以指向一个不同于config.toml
这样的配置文件(注意选项的位置config
很重要):
$ zola --config config.staging.toml build
您还可以使用标志处理来自不同目录的项目root
。如果使用标志构建一个“树外”项目root
,您可能希望将它与output-dir
标志结合起来。(注意like config
,位置很重要):
$ zola --root /path/to/project build
默认情况下,不会加载草稿。如果您希望包括它们,请传递--drafts
标志。
这将使用本地服务器构建站点并为其提供服务。如果您想要与默认值 ( ) 不同的东西,您还可以指定要使用的接口/端口组合127.0.0.1:1111
。
--interface
您还可以分别使用和-u
/为接口和 base_url 指定不同的地址--base-url
,例如,如果您在 Docker 容器中运行 Zola。
默认情况下,来自本地网络的设备将无法访问所提供的页面。当您想在移动设备或平板电脑上测试页面交互和布局时,这可能很重要。但是,如果您将接口设置为
0.0.0.0
,本地网络中的设备将能够通过请求服务页面和所用端口的机器的本地 ip 地址来访问服务页面。为了让一切正常工作,您可能还必须将
base-url
标志更改为本地 ip 或将其设置为/
使用基于服务器的相对路径。
使用该--open
标志在您的 Web 浏览器中自动打开本地托管的实例。
在开始之前,Zola 将删除输出目录(默认情况下public
在项目根目录中)以从头开始。
$ zola serve
$ zola serve --port 2000
$ zola serve --interface 0.0.0.0
$ zola serve --interface 0.0.0.0 --port 2000
$ zola serve --interface 0.0.0.0 --base-url 127.0.0.1
$ zola serve --interface 0.0.0.0 --base-url /
$ zola serve --interface 0.0.0.0 --port 2000 --output-dir www/public
$ zola serve --open
serve 命令将监视您的所有内容,并在可能的情况下提供实时重新加载而无需硬刷新。如果您在 Windows 上使用 WSL2,请确保将网站存储在 WSL 文件系统上。
某些更改无法自动处理,因此实时重新加载可能并不总是有效。如果您看不到更改或出现错误,请尝试重新启动zola serve
。
你也可以指向一个配置文件而不是像config.toml
这样(注意选项的位置config
很重要):
$ zola --config config.staging.toml serve
默认情况下,不会加载草稿。如果您希望包括它们,请传递--drafts
标志。
check 子命令将尝试像构建命令一样构建所有页面,但不会将任何结果写入磁盘。此外,它还会通过尝试获取 Markdown 文件中的所有外部链接来检查它们(不检查模板文件中的链接)。
默认情况下,不会加载草稿。如果您希望包括它们,请传递--drafts
标志。
如果您的终端支持,则使用彩色输出。
注意:当输出重定向到管道或文件时(即,当标准输出不是 TTY 时),着色会自动禁用。
您可以通过导出以下两个环境变量之一来禁用此行为:
NO_COLOR
(值无所谓)CLICOLOR=0
要强制使用颜色,您可以设置以下环境变量:
CLICOLOR_FORCE=1