Standalone Deployment
🚀 AskTable's standalone version now supports free download, installation, and usage.
💪 This guide will help you quickly deploy AskTable in your local environment and use it with your internal data.
Continuing to download, install, and use AskTable means you have read and agree to the Software Download, Installation, and Usage Agreement.
Prerequisites
Hardware
Minimum configuration requirements: 2-core CPU, 4G memory, 10G hard disk. Supports x86 and ARM architectures. On some domestic systems like Kylin V10SP1, privileged: true needs to be added in each container to obtain the highest permissions ⚠️
Operating System
-
Linux system The following software needs to be installed:
- Docker: Docker Installation Documentation.
- Docker Compose: Used to package and deploy AskTable and MySQL database. Docker Compose Installation Documentation.
-
macOS system The following software needs to be installed:
- Docker Desktop: An application for macOS desktop computers that includes Docker and Docker Compose. Installation Documentation.
Quick Deployment
Save the following content as a docker-compose.yml
file:
services:
asktable:
# AskTable
image: registry.cn-shanghai.aliyuncs.com/datamini/asktable-all-in-one:latest # For mainland China
depends_on:
- asktable_mysql
ports:
- "8000:80"
privileged: true
environment:
TZ: Asia/Shanghai
BASE_URL: http://127.0.0.1:8000 # 【Mandatory to modify】The address exposed by the container (i.e., the address accessed from outside, such as a browser)
LLM_API_KEY: asktable-xxxxxx=xxxxxxxx # 【Mandatory to modify】AI model token, which is a string starting with "asktable-". After logging into AskTable(https://cloud.asktable.com), click "Private Deployment AskTable" at the top to get it.
MYSQL_HOST: asktable_mysql # MySQL database address (this MySQL is the AskTable database, not the database queried by AskTable, the latter needs to be added on the AskTable interface)
MYSQL_USER: asktable # MySQL database username
MYSQL_PASSWORD: asktable # 【Recommended to modify】MySQL database password
MYSQL_DB: asktable # MySQL database name
MYSQL_ROOT_PASSWORD: asktable # 【Recommended to modify】MySQL database root password (used for initializing sample data)
VDB_ADDRESS: http://asktable_vdb:6333 # Vector database address
VDB_API_KEY: asktable #【Recommended to modify】Vector database API KEY
volumes:
- ./asktable_data:/asktable
asktable_mysql:
image: registry.cn-shanghai.aliyuncs.com/dminfra/mysql:8.0.27
ports:
- "3306"
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: asktable # 【Recommended to modify】
MYSQL_DATABASE: asktable
MYSQL_USER: asktable
MYSQL_PASSWORD: asktable # 【Recommended to modify】
volumes:
- ./mysql_data:/var/lib/mysql
asktable_vdb:
image: registry.cn-shanghai.aliyuncs.com/dminfra/qdrant:v1.11.5
ports:
- "6333"
- "6334"
environment:
RUN_MODE: production
TZ: Asia/Shanghai
QDRANT__SERVICE__API_KEY: asktable # 【Recommended to modify】
volumes:
- ./qdrant_storage:/qdrant/storage
- ./qdrant_snapshots:/qdrant/snapshots
Note that the BASE_URL
and LLM_API_KEY
configuration items must be modified according to the actual situation.
Run AskTable
After the configuration is completed, you can start AskTable via Docker Compose:
- Build and Start Containers
Run the following command in the directory where the docker-compose.yml
file is located:
docker compose up -d
# or docker-compose up -d
This command will start the AskTable application and MySQL database containers in the background.
- Access AskTable
Now, AskTable has started. You can access it in your browser:
http://127.0.0.1:8000
Here, you can log in using the default administrator (username is admin@asktable.com
, password is admin
) and start exploring the application.
Explore AskTable
After logging in, you can start using AskTable for various tasks, such as:
- Data management: Create, manage, and query data sources.
- Interact with AskTable AI: Use language models to query and analyze your data.
- Customize business knowledge: Configure terminology libraries, training datasets, and default preferences according to your business scenarios.
Advanced Configuration (Optional)
-
Set Administrator Account: If you want to set an administrator account, you can configure the following parameters:
AUTH_EMAIL_INIT_ADMIN_EMAIL: admin@asktable.com
AUTH_EMAIL_INIT_ADMIN_PASSWORD: admin -
Use Local LLM Model: If you want to use a local model, assuming that the model inference service has been deployed, you can configure the following parameters:
WarningUsing models not provided by AskTable may not guarantee performance. It is recommended to apply at https://cloud.asktable.com.
LLM_BASE_URL: http://10.10.0.3:11434/v1 # Address of the local LLM service
LLM_API_KEY: your_api_key_here # API Key of the local LLM service (if no key authentication is required, it is not necessary to configure)
AT_FORCE_LLM_MODEL: Qwen2.5-72B-Instruct-128K # The name of the model to be forced to useNote that we recommend the full-performance version
DeepSeek-V3-671B
for local models. Other models must meet the following conditions simultaneously:- At least 72B
- At least 64K context
- Support Function Call
- Support JSON (Instruct) Output
Additional performance requirements:
- Each AI question may involve 2-4 concurrent calls to large LLM models.
- Each AI question may require approximately 5000 Input Tokens and 500 Output Tokens.
Local LLM Service Detection ScriptWe have prepared a detection script for you, making it easy to quickly verify whether the local LLM meets the requirements on the server. Execute the following command in the server terminal (remember to replace
YOUR_BASE_URL
andYOUR_API_KEY
with your actual model service address and key):curl -O https://asktable-assets.oss-rg-china-mainland.aliyuncs.com/llm-env-test/asktable_llm_check.py && python3 asktable_llm_check.py --base-url YOUR_BASE_URL --api-key YOUR_API_KEY
If the detection passes, it can be seamlessly integrated with AskTable.
Update Version
If you need to update to the latest version, run the following commands in the directory where the docker-compose.yml
file is located:
docker compose pull
docker compose down
docker compose up -d
Frequently Asked Questions
-
Docker fails to run, and there is a network error. How to solve it?
Ensure that the firewall allows access to the following addresses (port 443):
registry.cn-shanghai.aliyuncs.com
(download images)dockerauth.cn-hangzhou.aliyuncs.com
(download images)aiproxy.asktable.com
(access AI model service)lf.asktable.com
(access AI Tracing service)
-
AskTable can be opened, but login prompts: Connection failed
Please check the parameter
BASE_URL
indocker-compose.yaml
. It should be configured to the address accessed through the browser. -
How to verify the connectivity between the container and the database (connection status)?
docker exec -ti asktable bash -c 'telnet DB_HOST DB_PORT'
-
DB_HOST
(database host address) -
DB_PORT
(database port number)
- If the connection is successful, it displays
Connected to localhost.
- If the connection is refused / network is not connected / timeout, it displays
telnet: Unable to connect to remote host: Connection refused/host/timed out
-
-
How to uninstall?
Perform the following operations in the directory where the
docker-compose.yml
file is located:- Run the command
docker compose down
- Delete the directories
asktable_data
,mysql_data
,qdrant_storage
, andqdrant_snapshots
(if any)
- Run the command
Notes
This deployment mode is suitable for quickly experiencing AskTable, but it is not suitable for production environments. Performance, accuracy, and stability cannot be guaranteed. If higher requirements are needed, please contact us.
Thank you again for using it. Good luck! 🚀