SkyeYoung commented on code in PR #12616:
URL: https://github.com/apache/apisix/pull/12616#discussion_r2348393151


##########
docs/en/latest/dashboard.md:
##########
@@ -0,0 +1,157 @@
+---
+title: Apache APISIX Dashboard
+---
+
+<!--
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+-->
+
+## Overview
+
+[Apache APISIX Dashboard](https://github.com/apache/apisix-dashboard) provides 
users with an intuitive web interface to operate and manage Apache APISIX. 
APISIX has a built-in Dashboard UI that is enabled by default, allowing users 
to easily configure routes, plugins, upstream services, and more through a 
graphical interface.
+
+## Configuring Dashboard
+
+### Enable or Disable Dashboard
+
+Apache APISIX enables the embedded Dashboard by default. To modify this 
setting, please edit the `conf/config.yaml` file:
+
+```yaml title="./conf/config.yaml"
+deployment:
+  admin:
+    # Enable embedded APISIX Dashboard
+    enable_admin_ui: true
+```
+
+**Configuration Description:**
+
+- `enable_admin_ui: true` - Enable embedded Dashboard (enabled by default)
+- `enable_admin_ui: false` - Disable embedded Dashboard
+
+After modifying the configuration, restart Apache APISIX for changes to take 
effect.
+
+### Restrict IP Access
+
+Apache APISIX supports setting an IP access whitelist for the Admin API to 
prevent unauthorized access and attacks on Apache APISIX.
+
+```yaml title="./conf/config.yaml"
+deployment:
+    admin:
+        # http://nginx.org/en/docs/http/ngx_http_access_module.html#allow
+        allow_admin:
+            - 127.0.0.0/24
+```
+
+### Admin API Key
+
+The Dashboard interacts with Apache APISIX through the Admin API and requires 
a correct Admin API Key for authentication.
+
+#### Configuration
+
+Configure the Admin API Key in `conf/config.yaml`:
+
+```yaml title="./conf/config.yaml"
+deployment:
+  admin:
+    admin_key:
+      -
+        name: admin
+        role: admin
+        # Using a simple Admin API Key poses security risks. Please update it 
when deploying to production
+        key: edd1c9f034335f136f87ad84b625c8f1
+```
+
+Configuration via environment variables is also supported:
+
+```yaml title="./conf/config.yaml"
+deployment:
+  admin:
+    admin_key:
+      - name: admin
+        # Read from environment variable
+        key: ${{ADMIN_KEY}}
+        role: admin
+```
+
+Set the environment variable before use:
+
+```bash
+export ADMIN_KEY=your-secure-api-key
+```
+
+Restart Apache APISIX after modifying the configuration for changes to take 
effect.
+
+#### Using in Dashboard
+
+Access the Dashboard, for example at `http://127.0.0.1:9180/ui`.
+
+When the Admin API Key is not configured, the settings modal will pop up:
+
+![Apache APISIX Dashboard - Need Admin 
Key](../../assets/images/dashboard-need-admin-key.png)
+
+If you accidentally close the settings modal, you can click the button <img 
src="../../assets/images/dashboard-settings-btn-icon.png" alt="Apache APISIX 
Dashboard - Settings btn icon" width="25px" /> on the right side of the 
navigation bar to reopen it.
+
+![Apache APISIX Dashboard - Reopen Settings 
Modal](../../assets/images/dashboard-reopen-settings-modal.png)
+
+Next, enter the Admin API Key configured in the previous section. The 
Dashboard will automatically make a request. If configured incorrectly, the 
Dashboard will still display `failed to check token` in the upper right corner:
+
+![Apache APISIX Dashboard - Admin Key is 
wrong](../../assets/images/dashboard-admin-key-is-wrong.png)
+
+If configured correctly, the Dashboard will no longer display `failed to check 
token`. At this point, click `X` or the blank area to close the settings modal 
and use normally.
+
+![Apache APISIX Dashboard - Admin Key is 
correct](../../assets/images/dashboard-admin-key-is-correct.png)
+
+## FAQ
+
+### Why was Apache APISIX Dashboard refactored?
+
+Apache APISIX Dashboard has evolved through multiple versions:
+
+- **Version 1.x**: A simple Web UI based on Vue.js that directly called the 
Admin API
+- **Version 2.x**: Adopted React + Ant Design Pro frontend architecture, 
introducing a Golang backend and database storage
+
+During the development of version 2.x, as community demand for features 
continued to increase, the project gradually became complex and bloated, while 
synchronization with the main APISIX version also faced challenges.
+
+After thorough discussion, the community decided to clarify the Dashboard's 
positioning and functional boundaries, returning to a lightweight design to 
ensure tight integration and version synchronization with the APISIX core.
+
+Future Apache APISIX Dashboard will focus on:
+
+- **Simplified Architecture**: Remove unnecessary complex components and 
return to the Dashboard's essential functions
+- **Enhanced User Experience**: Provide an intuitive and efficient management 
interface
+- **Version Synchronization**: Maintain synchronized releases with Apache 
APISIX main versions
+- **Production Ready**: Ensure stability and reliability, suitable for 
production environments
+
+For more planning information, please see: [Dashboard 
Roadmap](https://github.com/apache/apisix-dashboard/issues/2981)
+
+### Release Model
+
+The project no longer releases independently and has deprecated the release 
and tag versioning approach.
+
+When Apache APISIX is released, the Dashboard will be built directly based on 
a specified Git commit hash, and the artifacts will be embedded into Apache 
APISIX.
+
+### Legacy Apache APISIX Dashboard

Review Comment:
   ?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@apisix.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to