All-in-One 模式

All-in-One 模式部署由 Docker-Compose 的方式启动运行项目,Compose 能够定义和运行多个 Docker 容器的应用,允许用户通过一个单独的 docker-compose.yml 模板文件(YAML 格式)来定义一组相关联的应用容器为一个项目(project),通过子命令可对项目中的一组容器进行便捷地生命周期管理。

第一步: 准备环境

主机环境

需要准备一台满足最小资源要求的主机节点开始 all-in-one 模式的部署。

CPUMemory磁盘
1 核1 G10 G

软件环境

All-in-One 模式需要依赖以下软件,请预先在主机中安装符合以下版本要求的软件:

软件需求最低版本
Docker18.03.0-ce
Docker-Compose1.21.0
Make3.81

说明:若主机已安装 Kubernetes 环境,可能会造成 docker 容器之间网络不通。

第二步: 准备 OpenPitrix 安装包

  • 可通过 wget 命令从 GitHub 指定的 URL 下载指定版本的安装文件。

以下载 v0.3.1 的安装包为例,若希望下载其它版本的安装包和源代码,查看 OpenPitrix Releases

  1. $ wget https://github.com/openpitrix/openpitrix/releases/download/v0.3.1/openpitrix-v0.3.1-docker-compose.tar.gz
  • 解压安装包:
  1. $ tar -zxf openpitrix-v0.3.1-docker-compose.tar.gz

第三步: 部署 OpenPitrix

进入 openpitrix 目录,编译项目。该过程需要拉取多个 OpenPitrix 的 docker 镜像,拉取镜像和安装速度与网络也有关系,需要等待几分钟。

  1. $ cd openpitrix-v0.3.1-docker-compose/
  2. $ make

第四步: 验证

  • 查看所有容器的运行状况,正常情况下所有容器状态应该如下所示,确保 OpenPitrix 相关的镜像都已经成功创建:
  1. $ docker-compose ps
  2. Name Command State Ports
  3. --------------------------------------------------------------------------------------------------------------
  4. openpitrix-api-gateway api-gateway Up 0.0.0.0:9100->9100/tcp
  5. openpitrix-app-db-ctrl flyway -url=jdbc:mysql://o ... Exit 0
  6. openpitrix-app-manager app-manager Up
  7. openpitrix-category-manager category-manager Up
  8. openpitrix-cluster-db-ctrl flyway -url=jdbc:mysql://o ... Exit 0
  9. openpitrix-cluster-manager cluster-manager Up
  10. openpitrix-dashboard npm run prod:serve Up 0.0.0.0:8000->8000/tcp
  11. openpitrix-db docker-entrypoint.sh --low ... Up 0.0.0.0:13306->3306/tcp
  12. openpitrix-db-init sh -c /flyway/sql/ddl/ddl_ ... Exit 0
  13. openpitrix-etcd etcd --data-dir /data --li ... Up 0.0.0.0:12379->2379/tcp, 2380/tcp
  14. openpitrix-iam-db-ctrl flyway -url=jdbc:mysql://o ... Exit 0
  15. openpitrix-iam-service iam-service Up
  16. openpitrix-job-db-ctrl flyway -url=jdbc:mysql://o ... Exit 0
  17. openpitrix-job-manager job-manager Up
  18. openpitrix-minio sh -c mkdir -p /data/openp ... Up (healthy) 0.0.0.0:19000->9000/tcp
  19. openpitrix-pilot-service pilot -config=/opt/openpit ... Up 0.0.0.0:9110->9110/tcp, 0.0.0.0:9114->9114/tcp
  20. openpitrix-repo-db-ctrl flyway -url=jdbc:mysql://o ... Exit 0
  21. openpitrix-repo-indexer repo-indexer Up
  22. openpitrix-repo-manager repo-manager Up
  23. openpitrix-runtime-db-ctrl flyway -url=jdbc:mysql://o ... Exit 0
  24. openpitrix-runtime-manager runtime-manager Up
  25. openpitrix-task-db-ctrl flyway -url=jdbc:mysql://o ... Exit 0
  26. openpitrix-task-manager task-manager Up
  • 以上显示 dashboard 对外暴露的是 8000 端口,因此可通过公网 IP 和端口访问查看 OpenPitrix 主页,如 http://139.198.121.143:8000

若公网 IP 有防火墙,请在防火墙添加规则放行对应的端口,外部才能够访问。

OpenPitrix 主页

OpenPitrix 部署成功后,可以使用以下的管理员默认的用户名和密码登录 OpenPitrix 控制台体验,参见 用户管理 创建开发者和普通用户的角色,快速入门 将帮助您快速上手 OpenPitrix。

角色用户名密码
管理员admin@op.compassw0rd
  • 查看 Api Gateway 服务以上显示 api-gateway 对外暴露的是 9100 端口,同样,查看 OpenPitrix API 界面,可通过公网 IP 和端口转发的方式,如 http://139.198.121.143:9100/swagger-ui/

swagger 页面

清理环境

在项目文件目录下,执行以下命令,停止并删除 OpenPitrix 所有服务。

  1. $ docker compose-down