发布您的文档

以 Markdown 格式查看

当您准备让文档公开访问时,请使用 Fern CLI 发布它们。选择以下方法之一:仅发布到生产环境,或同时发布到预发布和生产环境

使用 Fern Dashboard 来管理 CLI 访问权限、连接您的 GitHub 仓库,并监控分析数据和失效链接。

发布到生产环境

对于单一生产环境站点(无预发布环境),运行以下命令来发布您的文档:

$fern generate --docs
Example
$fern generate --docs
$[docs]: Found 0 errors and 1 warnings. Run fern check --warnings to print out the warnings.
$[docs]: ✓ All checks passed
$[docs]: Published docs to https://plantstore.docs.buildwithfern.com
$┌─
$│ ✓ https://plantstore.docs.buildwithfern.com
$└─

使用 GitHub Action 工作流在推送到 main 分支时自动发布您的文档。

1

生成令牌

使用 fern token 生成一个用于在 CI/CD 环境中对 Fern CLI 进行身份验证的令牌。该令牌特定于您在 fern.config.json 中定义的组织,并且不会过期。

terminal
$fern token
2

将令牌添加为密钥

将令牌添加为名为 FERN_TOKEN仓库密钥

3

创建工作流

创建一个发布文档工作流(示例),并引用该密钥。

.github/workflows/publish-docs.yml
1name: Publish Docs
2
3on:
4 push:
5 branches:
6 - main
7
8jobs:
9 run:
10 runs-on: ubuntu-latest
11 if: ${{ github.event_name == 'push' && contains(github.ref, 'refs/heads/main') && github.run_number > 1 }}
12 steps:
13 - name: Checkout repository
14 uses: actions/checkout@v4
15
16 - name: Install Fern
17 run: npm install -g fern-api
18
19 - name: Publish Docs
20 env:
21 FERN_TOKEN: ${{ secrets.FERN_TOKEN }}
22 run: fern generate --docs

发布到预发布和生产环境

要在发布到生产环境之前在预发布站点上预览更改,请在您的 docs.yml 文件中定义多个实例。配置多个实例后,发布时必须使用 --instance 标志。

1

配置实例

将预发布和生产环境的 URL 添加到您的 docs.yml 文件中。URL 中不要包含 https://

docs.yml
1instances:
2 - url: plantstore-prod.docs.buildwithfern.com
3 - url: plantstore-staging.docs.buildwithfern.com
2

发布到特定实例

使用 --instance 标志发布到特定环境:

$# 发布到预发布环境
$fern generate --docs --instance plantstore-staging.docs.buildwithfern.com
$
$# 发布到生产环境
$fern generate --docs --instance plantstore-prod.docs.buildwithfern.com

发布后,两个实例都将出现在 Fern Dashboard 中。

使用 GitHub Action 工作流在每次推送时自动部署到预发布环境,同时保持生产环境部署为手动触发。

1

生成令牌

使用 fern token 生成一个用于在 CI/CD 环境中对 Fern CLI 进行身份验证的令牌。该令牌特定于您在 fern.config.json 中定义的组织,并且不会过期。

terminal
$fern token
2

将令牌添加为密钥

将令牌添加为名为 FERN_TOKEN仓库密钥

3

设置自动预发布部署工作流

此工作流在更改推送到 main 分支时自动发布到您的预发布实例:

.github/workflows/publish-staging.yml
1name: Publish Staging Docs
2
3on:
4 workflow_dispatch:
5 push:
6 branches:
7 - main
8
9jobs:
10 run:
11 runs-on: ubuntu-latest
12 steps:
13 - name: Checkout repository
14 uses: actions/checkout@v4
15
16 - name: Install Fern
17 run: npm install -g fern-api
18
19 - name: Validate configuration
20 run: fern check
21
22 - name: Publish to Staging
23 env:
24 FERN_TOKEN: ${{ secrets.FERN_TOKEN }}
25 run: fern generate --docs --instance plantstore-staging.docs.buildwithfern.com
4

设置手动生产环境部署工作流

此工作流允许您从 GitHub Actions UI 手动触发生产环境部署:

.github/workflows/publish-production.yml
1name: Publish Production Docs
2
3on:
4 workflow_dispatch:
5
6jobs:
7 run:
8 runs-on: ubuntu-latest
9 steps:
10 - name: Checkout repository
11 uses: actions/checkout@v4
12
13 - name: Install Fern
14 run: npm install -g fern-api
15
16 - name: Validate configuration
17 run: fern check
18
19 - name: Publish to Production
20 env:
21 FERN_TOKEN: ${{ secrets.FERN_TOKEN }}
22 run: fern generate --docs --instance plantstore-prod.docs.buildwithfern.com

要部署到生产环境,请转到您的 GitHub 仓库中的 Actions 选项卡,选择工作流,然后点击 Run workflow

托管

当您发布文档时,Fern 会为您托管它们。您也可以将文档发布到自定义域名

自托管您的文档

如果您需要离线访问文档或想在自己的服务器上托管文档,Fern 也提供该选项。自托管文档对某些功能的访问受限(包括 Ask Fern 和分析功能)。

取消发布您的文档

要取消发布文档站点,请导航到 Fern Dashboard 中您站点的 Settings 页面,然后点击 Unpublish。这会使域名不再公开访问,但不会删除站点——您可以随时重新发布。这对于创建草稿站点或临时隐藏站点使其不被公众查看很有用。