# flow-platform **Repository Path**: mirrors_YoKeyword/flow-platform ## Basic Information - **Project Name**: flow-platform - **Description**: CI backend server and agent - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-19 - **Last Updated**: 2026-01-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README flow-platform ============ 'flow-platform' is a backend project for flow.ci, it consist three main sub projects: - api: - control-center: to handle agent status and dispatch task to agent - agent: running in the any where to receive task from control center ## Getting Start ### Start with docker 首先 Docker pull flowci/flow-platform , 把对应的镜像拉下来 > 环境变量的设置: > > - `FLOW_API_DOMAIN`:部署的后端 API 域名地址 `必填` > - `FLOW_WEB_DOMAIN`:部署的前端 Web 页面的域名地址 `必填` > - `FLOW_SYS_EMAIL`:flowci 系统管理员账号 `必填` > - `FLOW_SYS_USERNAME`:flowci 系统管理员的用户名 `必填` > - `FLOW_SYS_PASSWORD`:flowci 系统管理员密码 `必填` > - `MYSQL_PASSWORD`:flowci MYSQL 数据库的密码 `必填` > - `MYSQL_HOST`:flowci MYSQL 数据库的 `HOST` `必填` > - `PORT`:外网访问的 API 端口,默认:8080 `选填` > - `MYSQL 的存储路径`: `~/flow-ci/db` `选填` ``` docker run -it \ -e MYSQL_HOST=127.0.0.1 \ -e MYSQL_PASSWORD=123456 \ -e FLOW_SYS_EMAIL=admin@fir.im \ -e FLOW_SYS_USERNAME=admin \ -e FLOW_SYS_PASSWORD=123456 \ -e FLOW_API_DOMAIN=127.0.0.1 \ -e FLOW_WEB_DOMAIN=127.0.0.1 \ -p 8080:8080 \ -v ~/flow-ci/data:/var/lib/mysql \ flowci/flow-platform ``` ### Build by maven Using standard maven `mvn clean install -DskipTests=true` to generate packages ####Installation#### In build phase will generate three packages: | project | package | container | |---------|---------|-----------| | api | flow-api.war | tomcat 8.5 | | control-center | flow-control-center.war | tomcat 8.5 | | agent | flow-agent-{version}.jar | | **flow api** Dependencies: - Mysql 5.6 **flow control center** Dependencies: - Apache zookeeper 3.4.10 - Mysql 5.6 - RabbitMQ 3.6.10 **Configuration** Configuration file can be loaded by sequence: - System envrionment variable: `FLOW_CONFIG_PATH` - System property: `-Dconfig.path` - Default directory: `/etc/flow.ci/config/app.properties` The sample properites file in : `platform-control-center/app-example.properties` **Agent** Start agent by following command: `java -jar flow-platform-agent-{version}.jar {zookeeper address} {zone name} $HOSTNAME` ### Build by docker Run `./build-docker.sh` will generate required docker images `flow.ci.backend` for back-end and `flow.ci.agent` for agent. **To start flow.ci backend services** `docker-compose up` **To start flow.ci agent** `docker run --network=host -e FLOW_ZOOKEEPER_HOST=127.0.0.1:2181 -e FLOW_AGENT_ZONE=default -e FLOW_AGENT_NAME={agent name you want} flow.ci.agent` ## License flow-platform is an open source project, sponsored by [fir.im](https://www.fir.im) under the [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0).