<br /><br />
<p align="center"> <a href="https://www.middlewarehq.com/"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/99b11e47-e047-4ddf-a65a-9d80aed9d7d4.png" alt="Middleware Logo" width=300px></a> </p> <p align="center"><b>释放开发者潜力的开源工程管理工具</b></p> <p align="center"> <a href="https://github.com/middlewarehq/middleware/actions/workflows/build.yml"><img alt="持续集成" src="https://img.shields.io/github/actions/workflow/status/middlewarehq/middleware/build.yml?branch=main&label=build&style=for-the-badge"></a> <a href="https://github.com/middlewarehq/middleware/graphs/commit-activity"><img alt="每月提交活动" src="https://img.shields.io/github/commit-activity/m/middlewarehq/middleware?style=for-the-badge" /></a> <a href="https://github.com/middlewarehq/middleware/graphs/contributors"><img alt="贡献者" src="https://img.shields.io/github/contributors-anon/middlewarehq/middleware?color=yellow&style=for-the-badge" /></a> <br/> <a href="https://opensource.org/licenses/Apache-2.0"><img src="https://yellow-cdn.veclightyear.com/0a4dffa0/baa10733-7ab2-4e43-ac0a-359eedde78c6.svg?style=for-the-badge&label=license" alt="许可证" /></a> <img src="https://img.shields.io/github/stars/middlewarehq/middleware?style=for-the-badge" alt="星标" /> </p> <p align="center"><a href="https://mhq.link/oss-community">加入我们的开源社区</a></p>Middleware 是一款开源工具,旨在帮助工程领导者使用 DORA 指标 衡量和分析团队的效能。DORA 指标是一组四个关键值,用于洞察软件交付性能和运营效率。
这些指标包括:
目录
确保已安装并运行 docker。
打开终端并运行以下命令:
docker volume create middleware_postgres_data docker volume create middleware_keys docker run --name middleware \ -p 3333:3333 \ -p 9696:9696 \ -p 9697:9697 \ -v middleware_postgres_data:/var/lib/postgresql/data \ -v middleware_keys:/app/keys \ -d middlewareeng/middleware:latest docker logs -f middleware
等待一段时间,让服务启动。
应用将在主机的 http://localhost:3333 上可用。
如果要停止容器,请运行以下命令:
docker stop middleware
要从远程获取最新版本并启动系统,请使用以下命令:
docker pull middlewareeng/middleware:latest docker rm -f middleware || true docker run --name middleware \ -p 3333:3333 \ -v middleware_postgres_data:/var/lib/postgresql/data \ -v middleware_keys:/app/keys \ -d middlewareeng/middleware:latest docker logs -f middleware
如果看到类似 Conflict. The container name "/middleware" is already in use by container
的错误。
在再次运行容器之前,执行以下命令:
docker rm -f middleware
如果要删除容器中保存的所有数据,可以运行以下命令删除创建的卷:
docker volume rm middleware_postgres_data middleware_keys
Gitpod 支持在远程机器上进行开发,如果您的机器不支持本地运行项目,它可以帮助您开始使用 Middleware。
如果您想在本地运行项目,可以使用 docker 进行设置或手动设置所有内容。
点击下方按钮在 Gitpod 中打开此项目。
这将在您的浏览器中打开一个配置完善的工作区,已安装所有必要的依赖项。
初始化后,您可以在 gitpod 实例的 3333 端口访问服务器。
如果您尚未安装 Docker,请在此处安装 Docker。 确保 Docker 正在运行。
克隆仓库:
git clone https://github.com/middlewarehq/middleware
进入项目目录:
cd middleware
在项目根目录运行 dev.sh
脚本 🪄
./dev.sh
会创建一个包含所需开发环境的 .env
文件,并运行一个 CLI,该 CLI 会完成从使用 docker compose watch
跟踪容器到提供不同服务日志的所有繁重工作。
使用方法如下:
./dev.sh
您可以更新 env.example
并设置 ENVIRONMENT=prod
以在生产环境中运行。
如果需要对端口进行任何更改,可以相应地更新 docker-compose.yml
文件。
访问应用程序: 项目运行后,通过网络浏览器访问 http://localhost:3333 来使用应用程序。 此外,其他服务可以通过以下方式访问:
localhost
,端口:5434
,用户名:postgres
,密码:postgres
,数据库名称:mhq-oss
。localhost
,端口:6385
。查看日志:尽管 CLI 会跟踪所有日志,但可以在不同的终端中使用以下命令查看容器内运行的服务日志:
前端日志
docker exec -it middleware-dev tail --lines 500 -f /var/log/web-server/web-server.log
后端 API 服务器日志
docker exec -it middleware-dev tail --lines 500 -f /var/log/apiserver/apiserver.log
后端同步服务器日志
docker exec -it middleware-dev tail --lines 500 -f /var/log/sync_server/sync_server.log
Redis 日志
docker exec -it middleware-dev tail --lines 500 -f /var/log/redis/redis.log
PostgreSQL 日志
docker exec -it middleware-dev tail --lines 500 -f /var/log/postgres/postgres.log
要在本地设置 middleware,请按照以下步骤操作:
克隆仓库:
git clone https://github.com/middlewarehq/middleware.git
进入项目目录:
cd middleware
运行 Redis 和 PostgreSQL 容器:
如果您尚未安装 Docker,请在此处安装 Docker。
运行以下命令使用 Docker 运行 PostgreSQL 和 Redis。
cd database-docker && docker-compose up -d
如果您不喜欢使用 Docker,可以选择手动安装 PostgreSQL 和 Redis。
使用或开发 Middleware 完成后,您可以选择关闭这些正在运行的容器。(注意:如果您正在按照本文档操作并尝试运行 Middleware ,请不要执行此操作。)
cd database-docker/ docker-compose down -v
生成加密密钥:
在项目根目录中运行以下命令生成项目的加密密钥:
cd setup_utils && . ./generate_config_ini.sh && cd ..
后端服务器设置
安装 Python 版本 3.11.6
如果您的机器上没有 Python,可以从这里安装。
安装 pyenv
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
将 pyenv 添加到您的 shell 配置文件(.bashrc、.bash_profile、.zshrc 等):
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
重新加载您的 shell:
source ~/.bashrc
进入后端目录创建虚拟环境
cd backend python -m venv venv
激活虚拟环境
. venv/bin/activate