Files
EdgeManager/docs/src/scada/environment.md

78 lines
1.8 KiB
Markdown
Raw Normal View History

# 环境搭建
## 开发环境
拉取代码:
```bash
# 建议先配置SSH key pair
git clone ssh://git@118.195.187.246:10022/ysun/EdgeManager.git
cd EdgeManager
```
一键部署PHP workerman和TimescaleDB环境
```bash
# docker build --network host -t edge_manager .
docker compose up -d
```
进入交互式Prompt
```bash
docker exec -it edge_manager sh
```
后端调试:
>--no_dup_code禁止code在不同的working subclass间复用
>
>--relay_device_status不判断是否是设备状态并转发到MES接口
>
>--port连接PG数据库端口默认5432端口
```bash
# In container
php EdgeManager.php --no_dup_code --relay_device_status --server_name=GPU-server-01 --user=postgres --password=big_dick start
```
前端调试:
```bash
# In host
# yarn
# yarn watch
yarn serve
```
客户端PG连接
```bash
# sudo apt install postgresql-client
# 登入
psql -h localhost -U postgres
# 显示数据库列表
\l
```
## 调试环境
不使用`docker compose`创建两个container分别运行EdgeManager和pg
```bash
# cd EdgeManager # 先定位到项目目录方便创建image和挂载
# 创建EdgeManager的image
docker build --network host -t edge_manager .
# 创建container运行EdgeManager
docker run -d --name edge_manager_test -v $PWD:/EdgeManager --network host --ipc host -it edge_manager
# 创建container运行pg将端口映射到host的55432
docker run -d --name pg_test -v $PWD/config/postgresql.conf:/etc/postgresql/postgresql.conf -p 55432:5432 -e POSTGRES_PASSWORD=big_dick -it timescale/timescaledb-ha:pg14-latest postgres -c 'config_file=/etc/postgresql/postgresql.conf'
# 进入交互式Prompt
docker exec -it edge_manager_test sh
# 启动EdgeManagerworkerman命令省略...
# 常用命令
# 查看全部container
docker ps -a
# 启动已停止的container
docker start [container]