开发环境搭建

本章节讲述了使用Choerodon 微服务框架开发微服务的一些软件依赖,以及如何在Windows 环境下进行安装使用。

开发工具

  • Git
  • JDK 1.8.0 及以上
  • maven 3.3 及以上
  • Docker for Windows
  • IDE
  • Mysql
  • Redis

Git 安装

  • Git 官网 下载对应平台的 Git。
  • 本地执行安装文件,安装 Git 环境。
  • 配置完成后打开 git bash 执行 git ,有提示则说明环境安装成功。
  • 配置本地git。
    打开git bash 执行如下命令:
  1. # 请将下面命令按实际情况进行执行
  2. git config --global user.name "Your Name"
  3. git config --global user.email "Your Email"

Java 安装

  • Oracle 官网 下载对应平台的 JDK 1.8.0 以上的环境。
  • 本地执行安装文件,安装 JDK 环境。
  • Win 在环境变量系统变量中 配置环境变量 JAVA_HOME 指向JDK安装目录,并将 path 配置 JDK 的环境变量 指向 JDK 安装目录下 JDK/bin
  • 配置完成后打开 git bash 执行 java ,有提示则说明环境安装成功。(git bash执行会有乱码,cmd则正常)

Maven 安装

  • Maven 官网 下载对应平台的合适的 maven 版本的压缩包。
  • 本地解压压缩包。
  • Win 在环境变量中系统变量的 path 配置 maven 的环境变量指向 maven 解压目录下的 /bin
  • 配置完成后打开 git bash 执行 mvn -v ,有提示则说明环境安装成功。

Docker for Windows 安装

  • Docker for Windows 下载安装包
  • 本地执行安装文件,安装Docker
  • 启动Docker,然后会提示启用Hyper-V需要重启
  • 重启后Docker会自动启动
  • 打开 git bash 执行 docker —version ,有提示则说明环境安装成功。
  • 打开 docker for windows,并在General 中勾选 Expose daemon on tcp://localhost:2375 without TLS

注意要使用Docker for Windows,机器必须开启虚拟化支持,部分机型默认禁用,需进入bios进行设置,因各机型设置不相一致,在此不做详细说明

IDE 安装

这里以idea 为例

  • 在IDEA官网下载安装包
  • 本地执行安装文件,安装IDEA
  • 菜单栏File > Setting打开设置, Editor > Code Style > Line separator (for new lines): Unix and OS X (n)
  • 确保idea使用utf-8编码
  • 安装Docker插件。在File-Settings-Plugins中,搜索Docker integration,点击Install安装,并重启软件加载插件
  • IDEA中配置Docker,在File-Settings-Build,Execution,Deployment-Clouds中,点击加号新建,会自动读取docker信息,直接保存即可

其他软件安装

除了基本的软件之外,其他基础软件可以通过官网下载安装包,也可以通过docker 启动镜像。Choerodon 建议通过docker 启动。

  • 在本地创建docker-compose的运行路径
  • 编写docker-compose.yaml 文件
  • 打开git bash 执行docker-compose up -d
  • 执行docker psdocker-compose ps 查看容器是否启动
    这里提供一份默认的mysql 配置和docker-compose.yaml 配置。
  1. # mysql_db.cnf
  2. [mysqld]
  3. lower_case_table_names=1
  4. character_set_server=utf8
  5. max_connections=500
  1. /** init_user.sql */
  2. CREATE USER 'choerodon'@'%' IDENTIFIED BY "123456";
  3. CREATE DATABASE IF NOT EXISTS iam_service DEFAULT CHARACTER SET utf8;
  4. CREATE DATABASE IF NOT EXISTS manager_service DEFAULT CHARACTER SET utf8;
  5. CREATE DATABASE IF NOT EXISTS asgard_service DEFAULT CHARACTER SET utf8;
  6. CREATE DATABASE IF NOT EXISTS notify_service DEFAULT CHARACTER SET utf8;
  7. GRANT ALL PRIVILEGES ON iam_service.* TO choerodon@'%';\
  8. GRANT ALL PRIVILEGES ON manager_service.* TO choerodon@'%';\
  9. GRANT ALL PRIVILEGES ON asgard_service.* TO choerodon@'%';\
  10. GRANT ALL PRIVILEGES ON notify_service.* TO choerodon@'%';\
  11. FLUSH PRIVILEGES;
  1. # docker-compose.yaml
  2. version: "3"
  3. services:
  4. mysql:
  5. container_name: mysql
  6. hostname: mysql
  7. image: registry.cn-hangzhou.aliyuncs.com/choerodon-tools/mysql:5.7.17
  8. ports:
  9. - "3306:3306"
  10. environment:
  11. MYSQL_ROOT_PASSWORD: root
  12. volumes:
  13. - ./mysql/mysql_data:/var/lib/mysql
  14. - ./mysql/mysql_db.cnf:/etc/mysql/conf.d/mysql_db.cnf
  15. - ./mysql/init_user.sql:/docker-entrypoint-initdb.d/init_user.sql
  16. expose:
  17. - "3306"
  18. networks:
  19. - "c7nNetwork"
  20. redis:
  21. container_name: redis
  22. hostname: redis
  23. image: redis:4.0.11
  24. ports:
  25. - "6379:6379"
  26. expose:
  27. - "6379"
  28. networks:
  29. - "c7nNetwork"
  30. networks:
  31. c7nNetwork:
  32. driver: bridge

停止容器通过命令docker-compose down

有关Docker的更多信息请见此处

有关Docker-Compose的更多信息请见此处