From 62a860a2683313c56fe96ca2a6b3442429ff2521 Mon Sep 17 00:00:00 2001 From: Duyet Le Date: Sat, 23 Nov 2024 12:11:31 +0700 Subject: [PATCH] feat(docs): enhance deployment documentation --- docs/next.config.mjs | 1 + docs/package.json | 1 + docs/pages/_meta.ts | 4 +- docs/pages/advanced/_meta.ts | 6 ++ docs/pages/advanced/custom-name.mdx | 9 +++ docs/pages/advanced/multiple-hosts.mdx | 64 ++++++++++++++++++ docs/pages/deploy.mdx | 6 +- docs/pages/deploy/_meta.ts | 4 +- docs/pages/deploy/docker.mdx | 8 +++ docs/pages/deploy/k8s.mdx | 8 +++ docs/pages/deploy/vercel.mdx | 8 +++ docs/pages/getting-started.mdx | 39 ++++++----- docs/pages/getting-started/_meta.ts | 9 ++- .../clickhouse-requirements.mdx | 4 +- docs/pages/getting-started/local.mdx | 63 +++++++++++++++++ docs/public/custom-name.png | Bin 0 -> 62430 bytes docs/theme.config.jsx | 22 +++--- docs/yarn.lock | 2 +- 18 files changed, 222 insertions(+), 36 deletions(-) create mode 100644 docs/pages/advanced/_meta.ts create mode 100644 docs/pages/advanced/custom-name.mdx create mode 100644 docs/pages/getting-started/local.mdx create mode 100644 docs/public/custom-name.png diff --git a/docs/next.config.mjs b/docs/next.config.mjs index 4470971b..b6537901 100644 --- a/docs/next.config.mjs +++ b/docs/next.config.mjs @@ -15,6 +15,7 @@ const nextConfig = { const withNextra = nextra({ theme: 'nextra-theme-docs', themeConfig: './theme.config.jsx', + search: true, }) export default withNextra(nextConfig) diff --git a/docs/package.json b/docs/package.json index 26cba222..b2e308aa 100644 --- a/docs/package.json +++ b/docs/package.json @@ -20,6 +20,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "^15.0.2", + "@types/dompurify": "^3.2.0", "@types/node": "^22.9.0", "@types/react": "^18.3.12", "@types/react-dom": "^18.3.1", diff --git a/docs/pages/_meta.ts b/docs/pages/_meta.ts index 9aadb78f..78dad9fd 100644 --- a/docs/pages/_meta.ts +++ b/docs/pages/_meta.ts @@ -1,6 +1,8 @@ -export default { +export const meta = { index: 'Introduction', 'getting-started': 'Getting Started', deploy: 'Deployments', advanced: 'Advanced', } + +export default meta diff --git a/docs/pages/advanced/_meta.ts b/docs/pages/advanced/_meta.ts new file mode 100644 index 00000000..3f38a055 --- /dev/null +++ b/docs/pages/advanced/_meta.ts @@ -0,0 +1,6 @@ +export const meta = { + 'multiple-hosts': 'Multiple Hosts', + 'custom-name': 'Custom ClickHouse Name', +} + +export default meta diff --git a/docs/pages/advanced/custom-name.mdx b/docs/pages/advanced/custom-name.mdx new file mode 100644 index 00000000..c0e5c531 --- /dev/null +++ b/docs/pages/advanced/custom-name.mdx @@ -0,0 +1,9 @@ +import { Tabs } from 'nextra/components' + +# Custom Name + +![](/custom-name.png) + +You can customize the ClickHouse host name by using the environment variable below: + +- `CLICKHOUSE_NAME`: A list of names for the ClickHouse instances separated by commas. The number of items must match the number of hosts in `CLICKHOUSE_HOST`. For example `clickhouse-0,clickhouse-1,clickhouse-2`. diff --git a/docs/pages/advanced/multiple-hosts.mdx b/docs/pages/advanced/multiple-hosts.mdx index 68485206..13787f39 100644 --- a/docs/pages/advanced/multiple-hosts.mdx +++ b/docs/pages/advanced/multiple-hosts.mdx @@ -1,3 +1,5 @@ +import { Tabs } from 'nextra/components' + # Multiple Hosts ![](/multiple-hosts.png) @@ -11,3 +13,65 @@ All these hosts will share the same `CLICKHOUSE_USER` and `CLICKHOUSE_PASSWORD`. - `CLICKHOUSE_USER`: `user1,user2` - `CLICKHOUSE_PASSWORD`: `password1,password2` + +# Examples Docker + + + + ```bash docker run -it \ -e + CLICKHOUSE_HOST='http://ch-1:8123,http://ch-2:8123' \ -e + CLICKHOUSE_NAME='ch-1,ch-2' \ -e CLICKHOUSE_USER='default' \ -e + CLICKHOUSE_PASSWORD='' \ --name clickhouse-monitoring \ + ghcr.io/duyet/clickhouse-monitoring:main ``` + + + ```bash docker run -it \ -e + CLICKHOUSE_HOST='http://ch-1:8123,http://ch-2:8123' \ -e + CLICKHOUSE_NAME='ch-1,ch-2' \ -e CLICKHOUSE_USER='user1,user2' \ -e + CLICKHOUSE_PASSWORD='password1,password2' \ --name clickhouse-monitoring \ + ghcr.io/duyet/clickhouse-monitoring:main ``` + + + +# Examples Kubernetes + + + + ```bash + helm repo add duyet https://duyet.github.io/charts + + cat <> values.yaml + env: + - name: CLICKHOUSE_HOST + value: http://ch-1:8123,http://ch-2:8123 + - name: CLICKHOUSE_NAME + value: ch-1,ch-2 + - name: CLICKHOUSE_USER + value: default + - name: CLICKHOUSE_PASSWORD + value: '' + EOF + + helm install -f values.yaml clickhouse-monitoring-release duyet/clickhouse-monitoring + ``` + + + ```bash + helm repo add duyet https://duyet.github.io/charts + + cat <> values.yaml + env: + - name: CLICKHOUSE_HOST + value: http://ch-1:8123,http://ch-2:8123 + - name: CLICKHOUSE_NAME + value: ch-1,ch-2 + - name: CLICKHOUSE_USER + value: user1,user2 + - name: CLICKHOUSE_PASSWORD + value: password1,password2 + EOF + + helm install -f values.yaml clickhouse-monitoring-release duyet/clickhouse-monitoring + ``` + + diff --git a/docs/pages/deploy.mdx b/docs/pages/deploy.mdx index d8a79348..e5860004 100644 --- a/docs/pages/deploy.mdx +++ b/docs/pages/deploy.mdx @@ -2,7 +2,7 @@ import { Cards } from 'nextra/components' import { Triangle, Container, Blocks } from 'lucide-react' - } title="Vercel" href="/vercel" /> - } title="Docker" href="/docker" /> - } title="Kubernetes" href="/k8s" /> + } title="Vercel" href="/deploy/vercel" arrow /> + } title="Docker" href="/deploy/docker" arrow /> + } title="Kubernetes" href="/deploy/k8s" arrow /> diff --git a/docs/pages/deploy/_meta.ts b/docs/pages/deploy/_meta.ts index 4142a06d..4b1df688 100644 --- a/docs/pages/deploy/_meta.ts +++ b/docs/pages/deploy/_meta.ts @@ -1,5 +1,7 @@ -export default { +export const meta = { vercel: 'Vercel', docker: 'Docker', k8s: 'Kubernetes', } + +export default meta diff --git a/docs/pages/deploy/docker.mdx b/docs/pages/deploy/docker.mdx index 74398f58..073c4113 100644 --- a/docs/pages/deploy/docker.mdx +++ b/docs/pages/deploy/docker.mdx @@ -13,3 +13,11 @@ docker run -it \ --name clickhouse-monitoring \ ghcr.io/duyet/clickhouse-monitoring:main ``` + +import { Cards } from 'nextra/components' +import { Triangle, Container, Blocks } from 'lucide-react' + + + } title="Vercel" href="/deploy/vercel" arrow /> + } title="Kubernetes" href="/deploy/k8s" arrow /> + diff --git a/docs/pages/deploy/k8s.mdx b/docs/pages/deploy/k8s.mdx index 0535ef20..f236a497 100644 --- a/docs/pages/deploy/k8s.mdx +++ b/docs/pages/deploy/k8s.mdx @@ -23,3 +23,11 @@ EOF helm install -f values.yaml clickhouse-monitoring-release duyet/clickhouse-monitoring ``` + +import { Cards } from 'nextra/components' +import { Triangle, Container, Blocks } from 'lucide-react' + + + } title="Vercel" href="/deploy/vercel" arrow /> + } title="Docker" href="/deploy/docker" arrow /> + diff --git a/docs/pages/deploy/vercel.mdx b/docs/pages/deploy/vercel.mdx index b21dc5f0..1272237c 100644 --- a/docs/pages/deploy/vercel.mdx +++ b/docs/pages/deploy/vercel.mdx @@ -45,3 +45,11 @@ EOF helm install -f values.yaml clickhouse-monitoring-release duyet/clickhouse-monitoring ``` + +import { Cards } from 'nextra/components' +import { Triangle, Container, Blocks } from 'lucide-react' + + + } title="Docker" href="/deploy/docker" arrow /> + } title="Kubernetes" href="/deploy/k8s" arrow /> + diff --git a/docs/pages/getting-started.mdx b/docs/pages/getting-started.mdx index f1179abf..73d6c7df 100644 --- a/docs/pages/getting-started.mdx +++ b/docs/pages/getting-started.mdx @@ -1,20 +1,25 @@ # Getting Started -To get the project up and running on your local machine, follow these steps: +import { Cards } from 'nextra/components' +import { Code, UserCog, Grid2x2Check } from 'lucide-react' -1. Clone the repository -2. Install dependencies using `npm install` or `yarn install` -3. Create a `.env.local` file by copying the `.env.example` file and filling in the required environment variables: - - - `CLICKHOUSE_HOST`: ClickHouse host(s), for example `http://localhost:8123` or `http://ch-1:8123,http://ch-2:8123` - - `CLICKHOUSE_NAME`: (Optional) Name of ClickHouse instance, must match the number of hosts in `CLICKHOUSE_HOST`, for example `localhost` or `ch-1,ch-2`. - - `CLICKHOUSE_USER`: ClickHouse user with permission to query the `system` database. - - `CLICKHOUSE_PASSWORD`: ClickHouse password for the specified user. - - `CLICKHOUSE_MAX_EXECUTION_TIME`: [`max_execution_time`](https://clickhouse.com/docs/en/operations/settings/query-complexity#max-execution-time) timeout in seconds. Default is `10`. - - `CLICKHOUSE_TZ`: ClickHouse server timezone. Default: `''`. - - `NEXT_QUERY_CACHE_TTL`: TTL of [`unstable_cache`](https://nextjs.org/docs/app/api-reference/functions/unstable_cache) - cache the results of most charts to speed up and reuse them across multiple requests. Default: `86400`. - - `NEXT_PUBLIC_LOGO`: (Optional) HTTP path to logo image. - - `EVENTS_TABLE_NAME`: The table name for storing dashboard self-tracking events. Default: `system.monitoring_events` - -4. Run the development server with `npm run dev` or `yarn dev` -5. Open [http://localhost:3000](http://localhost:3000) in your browser to see the dashboard. + + } + title="Local Development" + href="/getting-started/local" + arrow + /> + } + title="User Roles and Profile" + href="/getting-started/clickhouse-requirements" + arrow + /> + } + title="Enable System Tables" + href="/getting-started/clickhouse-enable-system-tables" + arrow + /> + diff --git a/docs/pages/getting-started/_meta.ts b/docs/pages/getting-started/_meta.ts index 677c0b6f..747d5fc4 100644 --- a/docs/pages/getting-started/_meta.ts +++ b/docs/pages/getting-started/_meta.ts @@ -1,4 +1,7 @@ -export default { - 'clickhouse-requirements': 'Clickhouse User Roles and Settings', - 'clickhouse-enable-system-tables': 'Clickhouse Enable System Tables', +export const meta = { + local: 'Local Development', + 'clickhouse-requirements': 'User Roles and Profile', + 'clickhouse-enable-system-tables': 'Enable System Tables', } + +export default meta diff --git a/docs/pages/getting-started/clickhouse-requirements.mdx b/docs/pages/getting-started/clickhouse-requirements.mdx index 7a49d904..a2fa6ef4 100644 --- a/docs/pages/getting-started/clickhouse-requirements.mdx +++ b/docs/pages/getting-started/clickhouse-requirements.mdx @@ -1,8 +1,8 @@ -# ClickHouse User Role and Settings +# ClickHouse User Role and Profile ## 1. Monitoring user role -Suggested role for "monitoring" user must have these privileges on `system` database: +Suggested role for **monitoring** user must have these privileges on `system` database: ```xml # File: users.d/monitoring_role.xml diff --git a/docs/pages/getting-started/local.mdx b/docs/pages/getting-started/local.mdx new file mode 100644 index 00000000..71460ba4 --- /dev/null +++ b/docs/pages/getting-started/local.mdx @@ -0,0 +1,63 @@ +import { Steps, Tabs, Cards } from 'nextra/components' +import { Code, UserCog, Grid2x2Check } from 'lucide-react' + +# Local Development + +To get the project up and running on your local machine, follow these steps: + + +### Clone the repository + +```bash +git clone https://github.com/duyet/clickhouse-monitoring +``` + +### Install dependencies + + + ```bash npm install ``` + ```bash yarn ``` + + +### Setup env + +Create a `.env.local` file by copying the `.env.example` file and filling in the required environment variables: + +- `CLICKHOUSE_HOST`: ClickHouse host, for example `http://localhost:8123` +- `CLICKHOUSE_USER`: ClickHouse user with permission to query the `system` database. +- `CLICKHOUSE_PASSWORD`: ClickHouse password for the specified user. +- `CLICKHOUSE_MAX_EXECUTION_TIME`: [`max_execution_time`](https://clickhouse.com/docs/en/operations/settings/query-complexity#max-execution-time) timeout in seconds. Default is `10`. +- `CLICKHOUSE_TZ`: ClickHouse server timezone. Default: `''`. +- `NEXT_QUERY_CACHE_TTL`: TTL of [`unstable_cache`](https://nextjs.org/docs/app/api-reference/functions/unstable_cache) - cache the results of most charts to speed up and reuse them across multiple requests. Default: `86400`. +- `NEXT_PUBLIC_LOGO`: (Optional) HTTP path to logo image. +- `EVENTS_TABLE_NAME`: The table name for storing dashboard self-tracking events. Default: `system.monitoring_events` + +### Config ClickHouse + + + } + title="1. User Roles and Profile" + href="/getting-started/clickhouse-requirements" + arrow + /> + } + title="2. Enable System Tables" + href="/getting-started/clickhouse-enable-system-tables" + arrow + /> + + +### Run the development server + + + ```bash npm run dev ``` + ```bash yarn dev ``` + + +### Final + +Open [http://localhost:3000](http://localhost:3000) in your browser to see the dashboard. + + diff --git a/docs/public/custom-name.png b/docs/public/custom-name.png new file mode 100644 index 0000000000000000000000000000000000000000..0d2b3c4d6b237fc5d5fda79a620cd3b35ed4b9ad GIT binary patch literal 62430 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 literal 0 HcmV?d00001 diff --git a/docs/theme.config.jsx b/docs/theme.config.jsx index 34c63e9d..02ed889f 100644 --- a/docs/theme.config.jsx +++ b/docs/theme.config.jsx @@ -1,9 +1,15 @@ +import Script from 'next/script' + export default { - logo: ClickHouse Monitoring, - project: { - link: 'https://github.com/duyet/clickhouse-monitoring' - }, - head: ( - - ) - } \ No newline at end of file + logo: ClickHouse Monitoring, + project: { + link: 'https://github.com/duyet/clickhouse-monitoring', + }, + head: ( +