2
0

feat: en quick start

This commit is contained in:
zhangsz
2025-04-23 11:16:07 +08:00
parent a0201bae3c
commit 92b001efc2
3 changed files with 351 additions and 4 deletions

View File

@@ -0,0 +1,339 @@
# WANFi Software Quick Installation Guide
## Preparation
* Hardware Requirements
```text
CPU: >= 4 core
Memory: >= 16GiB
Storage:
OS: >= 50GiB
/opt/wfc: >= 50GiB # work and database storage
/var/lib/docker: >= 50GiB
```
* System Environment
```text
Linux >= Ubuntu 22.04
JDK >= 1.8 (Recommended version 1.8) (for Omada SDN Controller)
Omada SDN Controller > 5.15.6.7
docker >= 24.0.7, build 24.0.7-0ubuntu2~22.04.1
docker-compose >= v2.10.0
docker-buildx >= 0.14.1
```
* Install docker, docker-compose and buildx plugin
```sh
sudo apt-get update
sudo apt-get install -y docker.io
# Install the docker-compose-v2 plugin
sudo apt-get install -y docker-compose-v2
sudo ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose
# Install the docker-buildx plugin
sudo apt-get install -y docker-buildx
sudo ln -s /usr/libexec/docker/cli-plugins/docker-buildx /usr/bin/docker-buildx
```
* Please confirm that the versions of docker, docker-compose and docker-buildx plugin meet the requirements
```sh
docker -v
docker compose version
docker buildx version
```
## Obtaining the Installation Package
- TAR Installation Package
File name: wfc-1.0.7-20250221.tar.gz
- DEB Installation Package
File namewfc-1.0.7-20250221.deb
Notes:
* Version 1.0.7
* Build date20250221
Obtain the latest version of the software installation package as needed
## Installing and Configuring the Software
**TAR Package Installation Method**
- Create Installation Directory
This step is required for fresh installations. If upgrading, retain the existing directory
```sh
sudo mkdir /opt/wfc
```
- Extract the Software Package to the Installation Directory
```sh
sudo tar xvfz wfc-1.0.7-20250221.tar.gz -C /opt/wfc
```
**DEB Package Installation Method**
- Install the Software Package
```sh
sudo dpkg -i wfc-1.0.7-20250221.deb
```
* Directory Tree After Installation
```text
/opt/wfc # work root directory
├── bin # shell script and binary file
├── docker # docker compose work directory
│   ├── env # default docker environment file, will be copy to docker compose work directory
│   ├── java # java image directory
│   ├── mysql # mysql database container directory
│   │   ├── conf
│   │   ├── conf.d
│   │   ├── data
│   │   ├── db
│   │   ├── logs
│   │   └── tmp
│   ├── nacos # nacos container directory
│   │   ├── conf
│   │   └── logs
│   ├── nginx # nginx container directory
│   │   ├── conf
│   │   ├── conf.d
│   │   ├── html
│   │   │   └── dist
│   │   │   ├── sys # system portal
│   │   │   └── u # user portal
│   │   └── logs
│   ├── redis # redis container directroy
│   │   ├── conf
│   │   └── data
│   └── wfc # wfc container root directory
│   ├── auth # auth root directory
│   │   └── jar
│   ├── gateway # gateway root directory
│   │   └── jar
│   ├── modules # modules root directory
│   │   ├── file
│   │   │   └── jar
│   │   ├── gen
│   │   │   └── jar
│   │   ├── job
│   │   │   └── jar
│   │   ├── payment
│   │   │   └── jar
│   │   ├── system
│   │   │   └── jar
│   │   └── user
│   │   └── jar
│   ├── upload # file upload directory
│   └── visual
│   └── monitor
│   └── jar
└── systemd # service daemon filewill be copy to /etc/systemd/system
└── system
```
* Configure the Software Environment
```sh
cd /opt/wfc/bin
sudo ./wfcsetup.sh env 192.168.13.128 # Parameter 2 is the host machine IP address
```
* Modify Docker Environment Parameters
Modify the following environment parameter configurations according to actual conditions:
** WFC_SERVER_IP address has already been replaced in the above configuration process
** Replace TZ with the host machine system time zone
```sh
cd /opt/wfc/docker
cat .env
WFC_CONFIG_DATABASE=wfc_config_db
WFC_SYSTEM_DATABASE=wfc_system_db
WFC_USER_DATABASE=wfc_user_db
MYSQL_SERVICE_NAME=wfc-mysql
MYSQL_SERVICE_PORT=3306
MYSQL_ROOT_PASSWORD=123456
MYSQL_SERVICE_USER=root
MYSQL_SERVICE_PASSWORD=123456
REDIS_PORT=6379
NACOS_PROFILE_NAME=prod
NACOS_NAME_SPACE=wfc-prod
NACOS_SERVER_NAME=wfc-nacos
WFC_SERVER_PORT=80
NACOS_SERVER_PORT=8848
GATEWAY_SERVER_PORT=8080
AUTH_SERVER_PORT=8081
WFC_FILE_PORT=9201
WFC_JOB_PORT=9203
WFC_PAYMENT_PORT=9204
WFC_SYSTEM_PORT=9205
WFC_USER_PORT=9206
WFC_SERVER_IP=192.168.13.128
NACOS_SERVER_IP=${WFC_SERVER_IP}
GATEWAY_SERVER_IP=${WFC_SERVER_IP}
RESTART_OPTION=on-failure:5
TZ=Asia/Shanghai #docker container time zone
```
If these container environment parameters have not been changed, you can directly run the following command to set the environment and create containers:
```sh
cd /opt/wfc/bin
sudo ./wfcsetup.sh all 192.168.13.128 # Parameter 2 is the host machine IP address
```
* Create Docker Containers
If you have already run 'sudo ./wfcsetup.sh all 192.168.13.128', the following command can be omitted
```sh
cd /opt/wfc/bin
sudo ./wfcsetup.sh all
```
## Configure Omada Platform Integration Connection Parameters
* Obtain portal platform integration connection parameters from the Omada service, as shown below:
![Omada platform integration configuration screenshot](media/wfc-omada-integration.png)
Note: The connection MODE uses Client. For specific configuration methods, refer to the relevant Omada documentation
* Modify Configuration Files
* Modify the following Omada configuration items for platform integration with Omada
```sh
cd /opt/wfc/docker/conf
cat application-common.yml
...
# Omada config
omada:
# web url or host exp: 'https://192.168.2.249:8043'
omada-url: 'https://aps1-omada-northbound.tplinkcloud.com'
omadac-id: 'c4decbf73f80094019d664506ec9b4d4'
client-id: '6110a77822234243a033e652d1e8a3ae'
client-secret: '651957da95f14f45b719876bb68bd6f5'
...
```
* Modify the following email configuration items for sending email verification codes
```sh
cd /opt/wfc/docker/conf
cat application-common.yml
...
mail:
enabled: true
host: mail.agrandtech.com
port: 25
# Enable authentication
auth: true
# Sender, follows RFC-822 standard
from: smtpext <smtpext@agrandtech.com>
# User name
user: smtpext
# Password
pass: Smtp123@agt
# Use TLS security connection
starttlsEnable: false
# Use SSL security connection
sslEnable: false
# Timeout value for sending mail, in milliseconds
timeout: 0
# Connection timeout value, in milliseconds
connectionTimeout: 0
...
```
* Allow email-related domains in Omada
To support users in obtaining email verification codes without network permissions when logging into AP for the first time, you can allow email-related domains in Omada. The specific steps are as follows:
After entering Omada, select the site you need to configure, select Settings->Authentication->Portal->Access Control->Pre-Authentication Access->check Enable, then add the email-related domains to the Pre-Authentication Access List. Note that all domains involved in accessing email need to be allowed, as shown in the following figures (the allowed domains may not be complete):
![](media/omada-auth-settings-1.png)
![](media/email-omada-auth-settings-2.png)
* Modify payment configuration items
```sh
cd /opt/wfc/docker/wfc/modules/payment/conf/
cat application.yml
...
# payment configuration,
# alipay configuration
alipay:
appId: 9021000122699258
privateKey: MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC7YAcIXV5GJlTWBOoBcrVG1zKxHunznSjYXwTS2DM3YgloxzKye4apfcmBDVnoL93m4QrJTtbiHYvu4yJjJfJsQEY+Wo44IczhDypyu+Il6JpQOwylTs94/+3aaQ1wThsDaGs8edaFGteuw+1pUVl4nxF00fS1VoIR30riqAGFAXrPhcSA6Y9c8HK1htxCelICnPzjpqC4s8ZjrjS7FoyHP2ZAay5fx1VEtah30E4RvycFfV/i2+k3JGFOSeevdCx6Ufu+9Y/RaG4Sh84QuYRQUhAHUswlFDHpRrAnxHzt0zDkOkg3BrCT7vMtBbSOP9BdIhpVTaZm4diQdNbLSl4hAgMBAAECggEAKb1Xc7aQ1KGfTlmj4xSxawlvImOXjAwbWC+6fFlq91BgdjXBhl7b/Y+mvpfBymY3UUIaTAPC/HXGgT2ZoGqImTKsMyGrArgM0qm1M//EfdtV3L96rqxirTqduoSiWL0daWHuWXduoRH8r9K3ZTmY67TLh7FpiKevq9mI7fqs8/qgq5QAN4UPFb3Cq9hDNTU4l6+Bywdg1KkwJ2Jc98SlrIdVl+1eCMAgueLR0aNHTobyPBZ/KfwGRV0OQ3QqjLVgL3zlbzuylYhaZqPgxxd46vgWwkyMiiv7u2OyCetq4LFd+tcNDz0Yqk6rK9/S0oxbN8NM5DLkpwFh/433BoPS3QKBgQD/dsxNr2PYdPLp6pOvw7H2AFMH8CkwTlRg+2f/0fgQF14rJwZgEU6fL5A2JvQeRRC5mCff2m5tDqrS321JNyH/JIKJ+4J8I34GEo/kSCHL3RmyvJGQOQ/EpEyxvP8BV3ob6UO3LR58DOGlJr8eTsr3Y8o9cAMuknCNxvsd2LvybwKBgQC7xKkx4KIPBny6sCOtChOkgIrY3hOCi+ZsHQVESXKzeku0NkH/qrAG+S9pb1XCzXdM2HrzkMeuz6tqi+2TY8nORyY2DZHNW7FqzkAiZ/NO2AgGIlALq1ZfJZke2MxgtBnxSsQ03gfXP9opu/FsLH9a+s6edfHPvKD4kHxlLBfAbwKBgQDYvr6QmuKn4HHJLZGoau0uvw+ziHwp1AubTTLrxgYmAO2Qx0eNcqG2RfChQWOV2xtZnFMYhodyWCNvTsm2eOSLSTrIP3ByStq95DnZganLAgivsXX/W6qZOJ0poCTryoB79enSHKHktjksmjdFS6zBQRVyEvtgJDcC03Rz2lN8WQKBgQCCoJE4otb7bv7s/ccEBeOeaNKvhue5xUwbYKEeXZ6PYAA0sh5+GCf34flq90qJiFl7u4rl0Y4pfk35hLlV9XEasYLSzePmIuktrakOhpTNABus8MgRJjSjYsvAmwCsMf9uTx5qzSBVThWfPSH6qIY9LAj8Un9UjxzJb/Mqi19GvwKBgQC0/KB+3robTqy9KOV4iEKJ4kmnXDRu7ecpMyc8k5HzpolIHcXLZHkBK9pMCXBQ9Kwy6BjRGNnUZOahS+tvnMcjHpwdhu90r7D51GXW/+PeFtphYTscFhHv1yuWbbojzhKf69pZnsVmyllIBqRgtbkS2WNHxWo/peCg47TcLaQNMA==
publicKey: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAhBZoE6p1TKpd/WsAJRTA2D6yUTzqLmZ73scxbPxxKwPIg2ys2Ap21u/lVmqBWO9Wf2Z7wUwr/6BP1PQqVpg0GAqU3yjjZ0LGfBitzMBMbGrlOLqJQ3PKgnUNmnOdLR4FlHCAjKtuyxjHkxBTHg/L4punk4lkFJQD8YvzFrYalS6WYw5j1/oq080NbcjPirPCRlsU7MRraQuUqSTdPwm2iHkroKwCEbGv+RtNJCfOkKNQVtRFFgPGMhU4nQ620gdfzsGJsNFKVJnD5SjeDWniBAbaGaVF4rEfKJPe6+XrcMg3h+9Fz+A2IU1KCCoth2neEZEaU1t0KBGxXIuo4efi/QIDAQAB
appCertPath: \u5E94\u7528\u516C\u94A5\u8BC1\u4E66
aliPayCertPath: \u652F\u4ED8\u5B9D\u516C\u94A5\u8BC1\u4E66
aliPayRootCertPath: \u652F\u4ED8\u5B9D\u6839\u8BC1\u4E66
serverUrl: https://openapi-sandbox.dl.alipaydev.com/gateway.do
domain: http://192.168.2.249
testDomain: http://129.204.171.210:8085
# wxpay configuration
wxpay:
appId:
appSecret:
mchId:
partnerKey:
certPath:
domain: http://192.168.2.249/u
...
```
* Allow payment-related domains in Omada
To support users in normally completing package purchases or balance recharges without network permissions when logging into AP for the first time, you need to allow payment-related domains in Omada. The specific steps are as follows:
After entering Omada, select the site you need to configure, select Settings->Authentication->Portal->Access Control->Pre-Authentication Access->check Enable, then add the payment method-related domains to the Pre-Authentication Access List. Note that all domains involved in payment need to be allowed, as shown in the following figures (the allowed domains may not be complete):
![](media/omada-auth-settings-1.png)
![](media/pay-omada-auth-settings-2.png)
* Start/View/Stop/Version Software
```sh
cd /opt/wfc/bin
sudo ./wfccontrol.sh start/restart/status/stop/version
```
## Access System Platform and User Platform via Browser
* System Platform Portal Address:
```url
http://192.168.13.128/sys
```
* User Platform Portal Address:
```url
http://192.168.13.128/u
```

Binary file not shown.

View File

@@ -21,22 +21,30 @@ JDK >= 1.8 (Recommended version 1.8) (用于Omada SDN Controller)
Omada SDN Controller > 5.15.6.7
docker >= 24.0.7, build 24.0.7-0ubuntu2~22.04.1
docker-compose >= v2.10.0
docker-buildx >= 0.14.1
```
* 安装dockerdocker-compose
* 安装docker, docker-compose和buildx插件
```sh
sudo apt-get update
sudo apt-get install -y docker.io
sudo curl -L "https://github.com/docker/compose/releases/download/v2.10.0/docker-compose-$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m)" -o /usr/bin/docker-compose
sudo chmod +x /usr/bin/docker-compose
# 安装docker-compose-v2插件
sudo apt-get install -y docker-compose-v2
sudo ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose
# 安装docker-buildx插件
sudo apt-get install -y docker-buildx
sudo ln -s /usr/libexec/docker/cli-plugins/docker-buildx /usr/bin/docker-buildx
```
* 请确认dockerdocker-compose的版本是否符合要求
* 请确认docker, docker-compose和buildx插件的版本是否符合要求
```sh
docker -v
docker-compose -v
docker buildx version
```
## 获取安装包