feat: use devconatiner

This commit is contained in:
Jacky 2025-02-03 14:41:16 +08:00
parent 68a425b3d3
commit 00f4855dce
No known key found for this signature in database
GPG key ID: 215C21B10DF38B4D
25 changed files with 520 additions and 119 deletions

View file

@ -1,12 +1,12 @@
import {LocaleSpecificConfig, DefaultTheme} from 'vitepress'
import {demoUrl} from './common'
import { LocaleSpecificConfig, DefaultTheme } from 'vitepress'
import { demoUrl } from './common'
export const enConfig: LocaleSpecificConfig<DefaultTheme.Config> = {
themeConfig: {
nav: [
{text: 'Home', link: '/'},
{text: 'Guide', link: '/guide/about'},
{text: 'Demo', link: demoUrl}
{ text: 'Home', link: '/' },
{ text: 'Guide', link: '/guide/about' },
{ text: 'Demo', link: demoUrl }
],
sidebar: {
@ -15,55 +15,55 @@ export const enConfig: LocaleSpecificConfig<DefaultTheme.Config> = {
text: 'Introduction',
collapsed: false,
items: [
{text: 'What is Nginx UI?', link: '/guide/about'},
{text: 'Getting Started', link: '/guide/getting-started'},
{text: 'Install Script', link: '/guide/install-script-linux'}
{ text: 'What is Nginx UI?', link: '/guide/about' },
{ text: 'Getting Started', link: '/guide/getting-started' },
{ text: 'Install Script', link: '/guide/install-script-linux' }
]
},
{
text: 'Development',
collapsed: false,
items: [
{text: 'Build', link: '/guide/build'},
{text: 'Project Structure', link: '/guide/project-structure'},
{text: 'Config Template', link: '/guide/nginx-ui-template'},
{text: 'Contributing', link: '/guide/contributing'}
{ text: 'Build', link: '/guide/build' },
{ text: 'Project Structure', link: '/guide/project-structure' },
{ text: 'Config Template', link: '/guide/nginx-ui-template' },
{ text: 'Contributing', link: '/guide/contributing' }
]
},
{
text: 'Configuration',
collapsed: false,
items: [
{text: 'App', link: '/guide/config-app'},
{text: 'Server', link: '/guide/config-server'},
{text: 'Database', link: '/guide/config-database'},
{text: 'Auth', link: '/guide/config-auth'},
{text: 'Casdoor', link: '/guide/config-casdoor'},
{text: 'Cert', link: '/guide/config-cert'},
{text: 'Cluster', link: '/guide/config-cluster'},
{text: 'Crypto', link: '/guide/config-crypto'},
{text: 'Http', link: '/guide/config-http'},
{text: 'Logrotate', link: '/guide/config-logrotate'},
{text: 'Nginx', link: '/guide/config-nginx'},
{text: 'Node', link: '/guide/config-node'},
{text: 'Open AI', link: '/guide/config-openai'},
{text: 'Terminal', link: '/guide/config-terminal'},
{text: 'Webauthn', link: '/guide/config-webauthn'}
{ text: 'App', link: '/guide/config-app' },
{ text: 'Server', link: '/guide/config-server' },
{ text: 'Database', link: '/guide/config-database' },
{ text: 'Auth', link: '/guide/config-auth' },
{ text: 'Casdoor', link: '/guide/config-casdoor' },
{ text: 'Cert', link: '/guide/config-cert' },
{ text: 'Cluster', link: '/guide/config-cluster' },
{ text: 'Crypto', link: '/guide/config-crypto' },
{ text: 'Http', link: '/guide/config-http' },
{ text: 'Logrotate', link: '/guide/config-logrotate' },
{ text: 'Nginx', link: '/guide/config-nginx' },
{ text: 'Node', link: '/guide/config-node' },
{ text: 'Open AI', link: '/guide/config-openai' },
{ text: 'Terminal', link: '/guide/config-terminal' },
{ text: 'Webauthn', link: '/guide/config-webauthn' }
]
},
{
text: 'Environment Variables',
collapsed: false,
items: [
{text: 'Reference', link: '/guide/env'},
{ text: 'Reference', link: '/guide/env' },
]
},
{
text: 'Appendix',
collapsed: false,
items: [
{text: 'Nginx Proxy Example', link: '/guide/nginx-proxy-example'},
{text: 'License', link: '/guide/license'}
{ text: 'Nginx Proxy Example', link: '/guide/nginx-proxy-example' },
{ text: 'License', link: '/guide/license' }
]
}
]

View file

@ -1,8 +1,8 @@
import { defineConfig } from 'vitepress'
import {projectUrl, editLinkPattern} from './common'
import { projectUrl, editLinkPattern } from './common'
export const commitRef = process.env.COMMIT_REF ?
`<a href="${projectUrl}/commit/${process.env.COMMIT_REF}">` + process.env.COMMIT_REF.slice(0, 8) + '</a>':
`<a href="${projectUrl}/commit/${process.env.COMMIT_REF}">` + process.env.COMMIT_REF.slice(0, 8) + '</a>' :
'dev'
function thisYear() {
@ -37,7 +37,13 @@ export const sharedConfig = defineConfig({
},
socialLinks: [
{icon: 'github', link: projectUrl}
{ icon: 'github', link: projectUrl }
]
},
vite: {
server: {
port: Number.parseInt(process.env.VITE_PORT ?? '3003')
}
}
})

View file

@ -1,12 +1,12 @@
import {LocaleSpecificConfig, DefaultTheme} from 'vitepress'
import {demoUrl, editLinkPattern} from './common'
import { LocaleSpecificConfig, DefaultTheme } from 'vitepress'
import { demoUrl, editLinkPattern } from './common'
export const zhCNConfig: LocaleSpecificConfig<DefaultTheme.Config> = {
themeConfig: {
nav: [
{text: '首页', link: '/zh_CN/'},
{text: '手册', link: '/zh_CN/guide/about'},
{text: '演示', link: demoUrl}
{ text: '首页', link: '/zh_CN/' },
{ text: '手册', link: '/zh_CN/guide/about' },
{ text: '演示', link: demoUrl }
],
editLink: {
@ -20,55 +20,55 @@ export const zhCNConfig: LocaleSpecificConfig<DefaultTheme.Config> = {
text: '介绍',
collapsed: false,
items: [
{text: '何为 Nginx UI?', link: '/zh_CN/guide/about'},
{text: '即刻开始', link: '/zh_CN/guide/getting-started'},
{text: '安装脚本', link: '/zh_CN/guide/install-script-linux'}
{ text: '何为 Nginx UI?', link: '/zh_CN/guide/about' },
{ text: '即刻开始', link: '/zh_CN/guide/getting-started' },
{ text: '安装脚本', link: '/zh_CN/guide/install-script-linux' }
]
},
{
text: '开发',
collapsed: false,
items: [
{text: '构建', link: '/zh_CN/guide/build'},
{text: '项目结构', link: '/zh_CN/guide/project-structure'},
{text: '配置模板', link: '/zh_CN/guide/nginx-ui-template'},
{text: '贡献代码', link: '/zh_CN/guide/contributing'}
{ text: '构建', link: '/zh_CN/guide/build' },
{ text: '项目结构', link: '/zh_CN/guide/project-structure' },
{ text: '配置模板', link: '/zh_CN/guide/nginx-ui-template' },
{ text: '贡献代码', link: '/zh_CN/guide/contributing' }
]
},
{
text: '配置',
collapsed: false,
items: [
{text: 'App', link: '/zh_CN/guide/config-app'},
{text: 'Server', link: '/zh_CN/guide/config-server'},
{text: 'Database', link: '/zh_CN/guide/config-database'},
{text: 'Auth', link: '/zh_CN/guide/config-auth'},
{text: 'Casdoor', link: '/zh_CN/guide/config-casdoor'},
{text: 'Cert', link: '/zh_CN/guide/config-cert'},
{text: 'Cluster', link: '/zh_CN/guide/config-cluster'},
{text: 'Crypto', link: '/zh_CN/guide/config-crypto'},
{text: 'Http', link: '/zh_CN/guide/config-http'},
{text: 'Logrotate', link: '/zh_CN/guide/config-logrotate'},
{text: 'Nginx', link: '/zh_CN/guide/config-nginx'},
{text: 'Node', link: '/zh_CN/guide/config-node'},
{text: 'Open AI', link: '/zh_CN/guide/config-openai'},
{text: 'Terminal', link: '/zh_CN/guide/config-terminal'},
{text: 'Webauthn', link: '/zh_CN/guide/config-webauthn'}
{ text: 'App', link: '/zh_CN/guide/config-app' },
{ text: 'Server', link: '/zh_CN/guide/config-server' },
{ text: 'Database', link: '/zh_CN/guide/config-database' },
{ text: 'Auth', link: '/zh_CN/guide/config-auth' },
{ text: 'Casdoor', link: '/zh_CN/guide/config-casdoor' },
{ text: 'Cert', link: '/zh_CN/guide/config-cert' },
{ text: 'Cluster', link: '/zh_CN/guide/config-cluster' },
{ text: 'Crypto', link: '/zh_CN/guide/config-crypto' },
{ text: 'Http', link: '/zh_CN/guide/config-http' },
{ text: 'Logrotate', link: '/zh_CN/guide/config-logrotate' },
{ text: 'Nginx', link: '/zh_CN/guide/config-nginx' },
{ text: 'Node', link: '/zh_CN/guide/config-node' },
{ text: 'Open AI', link: '/zh_CN/guide/config-openai' },
{ text: 'Terminal', link: '/zh_CN/guide/config-terminal' },
{ text: 'Webauthn', link: '/zh_CN/guide/config-webauthn' }
]
},
{
text: '环境变量',
collapsed: false,
items: [
{text: '参考手册', link: '/zh_CN/guide/env'},
{ text: '参考手册', link: '/zh_CN/guide/env' },
]
},
{
text: '附录',
collapsed: false,
items: [
{text: 'Nginx 代理示例', link: '/zh_CN/guide/nginx-proxy-example'},
{text: '开源协议', link: '/zh_CN/guide/license'}
{ text: 'Nginx 代理示例', link: '/zh_CN/guide/nginx-proxy-example' },
{ text: '开源协议', link: '/zh_CN/guide/license' }
]
}
]

View file

@ -1,12 +1,12 @@
import {LocaleSpecificConfig, DefaultTheme} from 'vitepress'
import {demoUrl, editLinkPattern} from './common'
import { LocaleSpecificConfig, DefaultTheme } from 'vitepress'
import { demoUrl, editLinkPattern } from './common'
export const zhTWConfig: LocaleSpecificConfig<DefaultTheme.Config> = {
themeConfig: {
nav: [
{text: '首頁', link: '/zh_TW/'},
{text: '手冊', link: '/zh_TW/guide/about'},
{text: '演示', link: demoUrl}
{ text: '首頁', link: '/zh_TW/' },
{ text: '手冊', link: '/zh_TW/guide/about' },
{ text: '演示', link: demoUrl }
],
editLink: {
@ -20,55 +20,55 @@ export const zhTWConfig: LocaleSpecificConfig<DefaultTheme.Config> = {
text: '介紹',
collapsed: false,
items: [
{text: '何為 Nginx UI?', link: '/zh_TW/guide/about'},
{text: '即刻開始', link: '/zh_TW/guide/getting-started'},
{text: '安裝指令碼', link: '/zh_TW/guide/install-script-linux'}
{ text: '何為 Nginx UI?', link: '/zh_TW/guide/about' },
{ text: '即刻開始', link: '/zh_TW/guide/getting-started' },
{ text: '安裝指令碼', link: '/zh_TW/guide/install-script-linux' }
]
},
{
text: '開發',
collapsed: false,
items: [
{text: '構建', link: '/zh_TW/guide/build'},
{text: '專案結構', link: '/zh_TW/guide/project-structure'},
{text: '配置模板', link: '/zh_TW/guide/nginx-ui-template'},
{text: '貢獻程式碼', link: '/zh_TW/guide/contributing'}
{ text: '構建', link: '/zh_TW/guide/build' },
{ text: '專案結構', link: '/zh_TW/guide/project-structure' },
{ text: '配置模板', link: '/zh_TW/guide/nginx-ui-template' },
{ text: '貢獻程式碼', link: '/zh_TW/guide/contributing' }
]
},
{
text: '配置',
collapsed: false,
items: [
{text: 'App', link: '/zh_TW/guide/config-app'},
{text: 'Server', link: '/zh_TW/guide/config-server'},
{text: 'Database', link: '/zh_TW/guide/config-database'},
{text: 'Auth', link: '/zh_TW/guide/config-auth'},
{text: 'Casdoor', link: '/zh_TW/guide/config-casdoor'},
{text: 'Cert', link: '/zh_TW/guide/config-cert'},
{text: 'Cluster', link: '/zh_TW/guide/config-cluster'},
{text: 'Crypto', link: '/zh_TW/guide/config-crypto'},
{text: 'Http', link: '/zh_TW/guide/config-http'},
{text: 'Logrotate', link: '/zh_TW/guide/config-logrotate'},
{text: 'Nginx', link: '/zh_TW/guide/config-nginx'},
{text: 'Node', link: '/zh_TW/guide/config-node'},
{text: 'Open AI', link: '/zh_TW/guide/config-openai'},
{text: 'Terminal', link: '/zh_TW/guide/config-terminal'},
{text: 'Webauthn', link: '/zh_TW/guide/config-webauthn'}
{ text: 'App', link: '/zh_TW/guide/config-app' },
{ text: 'Server', link: '/zh_TW/guide/config-server' },
{ text: 'Database', link: '/zh_TW/guide/config-database' },
{ text: 'Auth', link: '/zh_TW/guide/config-auth' },
{ text: 'Casdoor', link: '/zh_TW/guide/config-casdoor' },
{ text: 'Cert', link: '/zh_TW/guide/config-cert' },
{ text: 'Cluster', link: '/zh_TW/guide/config-cluster' },
{ text: 'Crypto', link: '/zh_TW/guide/config-crypto' },
{ text: 'Http', link: '/zh_TW/guide/config-http' },
{ text: 'Logrotate', link: '/zh_TW/guide/config-logrotate' },
{ text: 'Nginx', link: '/zh_TW/guide/config-nginx' },
{ text: 'Node', link: '/zh_TW/guide/config-node' },
{ text: 'Open AI', link: '/zh_TW/guide/config-openai' },
{ text: 'Terminal', link: '/zh_TW/guide/config-terminal' },
{ text: 'Webauthn', link: '/zh_TW/guide/config-webauthn' }
]
},
{
text: '環境變量',
collapsed: false,
items: [
{text: '參考手冊', link: '/zh_TW/guide/env'},
{ text: '參考手冊', link: '/zh_TW/guide/env' },
]
},
{
text: '附錄',
collapsed: false,
items: [
{text: 'Nginx 代理示例', link: '/zh_TW/guide/nginx-proxy-example'},
{text: '開源協議', link: '/zh_TW/guide/license'}
{ text: 'Nginx 代理示例', link: '/zh_TW/guide/nginx-proxy-example' },
{ text: '開源協議', link: '/zh_TW/guide/license' }
]
}
]