diff --git a/.env.example b/.env.example new file mode 100644 index 0000000000000000000000000000000000000000..fc89341353a2ba259e27709d2a9d8c05d328c8d9 --- /dev/null +++ b/.env.example @@ -0,0 +1,5 @@ +# 生产环境 +DOCS_CDN_PREFIX=https://ai-assets.gitee.com/docs + +# 开发环境 +# DOCS_CDN_PREFIX=/docs \ No newline at end of file diff --git a/.gitignore b/.gitignore index 8408428a336f4187181a8352bc1c6e3228f6ed81..62c5e57c043d0e19527244da813cf2cead47dde9 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,6 @@ yarn-error.log* .idea .vscode + +# local env files +.env \ No newline at end of file diff --git a/docusaurus.config.ts b/docusaurus.config.ts index d7d7e899bdc8ba8dee06b3a463bdd56c852a5e93..8f2825ab0cd855db0804192574a14bb32a06a08f 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -1,12 +1,15 @@ +import 'dotenv/config'; import { themes as prismThemes } from 'prism-react-renderer'; import type { Config } from '@docusaurus/types'; import type * as Preset from '@docusaurus/preset-classic'; import type { ScalarOptions } from '@scalar/docusaurus'; +const CDN_PREFIX = process.env.DOCS_CDN_PREFIX; + const config: Config = { title: '模力方舟(Gitee AI)', tagline: '开发 AI 应用从此简单', - favicon: 'img/favicon.ico', + favicon: `${CDN_PREFIX}/img/favicon.ico`, // Set the production url of your site here url: 'https://ai.gitee.com', @@ -61,8 +64,8 @@ const config: Config = { // title: 'Gitee AI', logo: { alt: 'Gitee AI', - src: 'img/logo-full.svg', - srcDark: 'img/logo-full-white.svg', + src: `${CDN_PREFIX}/img/logo-full.svg`, + srcDark: `${CDN_PREFIX}/img/logo-full-white.svg`, href: 'https://ai.gitee.com', target: '_self', style: { @@ -319,6 +322,18 @@ const config: Config = { }, }, ], + function() { + return { + name: 'cdn-image-plugin', + configureWebpack(config, isServer) { + return { + output: { + publicPath: `${CDN_PREFIX}/`, // 将静态资源的路径指向 CDN + }, + }; + }, + }; + }, ], }; diff --git a/package.json b/package.json index dbeed174f00c0efbb40736fff643b1b2b5e7ad40..73c1d51a54c8072509dcd8ff1c5b8a7df9d5272e 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ "@docusaurus/module-type-aliases": "3.2.1", "@docusaurus/tsconfig": "3.2.1", "@docusaurus/types": "3.2.1", + "dotenv": "^16.4.7", "prettier": "^3.2.5", "typescript": "~5.2.2" }, diff --git a/yarn.lock b/yarn.lock index 2a745ba94e67c778afdd15e8392d2eef64394848..eab49efc2b26ceb65b04e73328a46c95bf0d148e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7129,6 +7129,11 @@ dot-prop@^6.0.1: dependencies: is-obj "^2.0.0" +dotenv@^16.4.7: + version "16.4.7" + resolved "https://registry.npmmirror.com/dotenv/-/dotenv-16.4.7.tgz#0e20c5b82950140aa99be360a8a5f52335f53c26" + integrity sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ== + download@^6.2.2: version "6.2.5" resolved "https://registry.npmmirror.com/download/-/download-6.2.5.tgz#acd6a542e4cd0bb42ca70cfc98c9e43b07039714"