FerryDocs

Upload the built site

Build the docs on your machine, then send the folder out/ to Ferry with ferry up.

Edit on GitHub

Build. npm run build writes the site to out/ and checks each internal link.

1 / 4

Build the static export

Terminal
cd docs
npm ci
DOCS_SITE_URL=http://ferry-docs.localhost:8080 npm run build

npm run build writes the to out/, then checks each internal link. See Build variables.

Deploy the export

Terminal
ferry up ferry-docs --dir out --type static --follow

out/ has an index.html at its root and no package.json. Thus Ferry does no build and serves the files as they are. The site is live at http://ferry-docs.localhost:8080.

Check it

RequestResult
/docs/concepts/deploys/The file out/docs/concepts/deploys/index.html. The URL of a page ends with a slash.
The same path without the slashA 301 redirect to the URL with the slash.
An unknown pathThe 404.html of the site.
Search, Open Graph images, llms.txt filesStatic files too. They work with no server-side runtime.

Publish an update

Run the same two commands again: npm run build, then ferry up. Each upload is a new .

Thus a brings back an earlier version: ferry rollback ferry-docs DEPLOY_ID. It works if Ferry still has the image of that deploy. By default, Ferry keeps the last 5 images of each service (ferryd --keep-images).

On this page