You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

cli-usage.md 3.2KB

7 years ago
7 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. +++
  2. title = "CLI usage"
  3. weight = 2
  4. +++
  5. Zola only has 3 commands: init, build and serve.
  6. You can view the help of the whole program by running `zola --help` and
  7. the command help by running `zola <cmd> --help`.
  8. ## init
  9. Creates the directory structure used by Zola at the given directory.
  10. ```bash
  11. $ zola init my_site
  12. ```
  13. will create a new folder named `my_site` and the files/folders needed by
  14. zola.
  15. ## build
  16. This will build the whole site in the `public` directory after deleting it.
  17. ```bash
  18. $ zola build
  19. ```
  20. You can override the config `base_url` by passing a new URL to the `base-url` flag.
  21. ```bash
  22. $ zola build --base-url $DEPLOY_URL
  23. ```
  24. This is useful for example when you want to deploy previews of a site to a dynamic URL, such as Netlify
  25. deploy previews.
  26. You can override the default output directory 'public' by passing a other value to the `output-dir` flag.
  27. ```bash
  28. $ zola build --output-dir $DOCUMENT_ROOT
  29. ```
  30. You can also point to another config file than `config.toml` like so - the position of the `config` option is important:
  31. ```bash
  32. $ zola --config config.staging.toml build
  33. ```
  34. ## serve
  35. This will build and serve the site using a local server. You can also specify
  36. the interface/port combination to use if you want something different than the default (`127.0.0.1:1111`).
  37. You can also specify different addresses for the interface and base_url using `-u`/`--base-url`, for example
  38. if you are running zola in a Docker container.
  39. Use the `--open` flag to automatically open the locally hosted instance in your
  40. web browser.
  41. In the event you don't want zola to run a local webserver, you can use the `--watch-only` flag.
  42. Before starting, it will delete the public directory to ensure it starts from a clean slate.
  43. ```bash
  44. $ zola serve
  45. $ zola serve --port 2000
  46. $ zola serve --interface 0.0.0.0
  47. $ zola serve --interface 0.0.0.0 --port 2000
  48. $ zola serve --interface 0.0.0.0 --base-url 127.0.0.1
  49. $ zola serve --interface 0.0.0.0 --port 2000 --output-dir www/public
  50. $ zola serve --watch-only
  51. $ zola serve --open
  52. ```
  53. The serve command will watch all your content and will provide live reload, without
  54. hard refresh if possible.
  55. Zola does a best-effort to live reload but some changes cannot be handled automatically. If you
  56. fail to see your change or get a weird error, try to restart `zola serve`.
  57. You can also point to another config file than `config.toml` like so - the position of the `config` option is important:
  58. ```bash
  59. $ zola --config config.staging.toml serve
  60. ```
  61. ### check
  62. The check subcommand will try to build all pages just like the build command would, but without writing any of the
  63. results to disk. Additionally, it will also check all external links present in Markdown files by trying to fetch
  64. them (links present in the template files will not be checked).
  65. ## Colored output
  66. Any of the three commands will emit colored output if your terminal supports it.
  67. *Note*: coloring is automatically disabled when the output is redirected to a pipe or a file (ie. when the standard output is not a TTY).
  68. You can disable this behavior by exporting one of the two following environment variables:
  69. - `NO_COLOR` (the value does not matter)
  70. - `CLICOLOR=0`
  71. Should you want to force the use of colors, you can set the following environment variable:
  72. - `CLICOLOR_FORCE=1`