找回密码
 立即注册
首页 业界区 业界 wso2~部署~v4.2.0-alpha本地构建

wso2~部署~v4.2.0-alpha本地构建

富账慕 3 天前
让我先查看一下v4.2.0-alpha分支的构建相关信息:
Search files...
让我继续查看构建说明文档:
Search files...
让我查看一下项目根目录下的文件:
Ran tool
让我查看一下 INSTALL.txt 文件:
Read file: INSTALL.txt
让我查看一下 README.md 文件:
Read file: README.md
基于以上信息,我可以为您提供在v4.2.0-alpha分支上构建WSO2 API Manager的详细步骤:

  • 系统要求:


  • JDK 11 或更高版本
  • Maven 3.0.4 或更高版本
  • 最小内存要求: 4GB RAM (2GB 给JVM, 2GB 给操作系统)
  • 处理器: 3 GHz Dual-core Xeon/Opteron或更高
  • 操作系统: Windows/Linux/Mac OS X

  • 构建步骤:
  1. # 1. 克隆仓库(如果还没有的话)
  2. git clone https://github.com/wso2/product-apim.git
  3. # 2. 切换到v4.2.0-alpha分支
  4. cd product-apim
  5. git checkout v4.2.0-alpha
  6. # 3. 使用Maven构建项目
  7. mvn clean install -DskipTests -Dcheckstyle.skip
复制代码
项目的主要模块包括:

  • modules/styles
  • modules/org.wso2.am.multitenancy.dashboard.ui
  • modules/features
  • modules/p2-profile
  • modules/oauth2-grant-types

  • 运行服务器:
可以直接从github上下载构建好的zip包,https://github.com/wso2/product-apim/releases/download/v4.5.0/wso2am-4.5.0.zip
构建完成后,可以按以下步骤运行:
  1. # 1. 进入构建产物目录
  2. cd modules/distribution/product/target/wso2am-4.2.0-alpha/bin
  3. # 2. 启动服务器
  4. # Linux/Mac:
  5. ./api-manager.sh
  6. # Windows:
  7. api-manager.bat
复制代码

  • 访问各个组件:


  • API Publisher: https://localhost:9443/publisher
  • Developer Portal: https://localhost:9443/devportal
  • Admin Portal: https://localhost:9443/admin
默认登录凭证:

  • 用户名: admin
  • 密码: admin

  • 其他有用的启动选项:
  1. # 调试模式启动
  2. ./api-manager.sh --debug <port>
  3. # 清理注册表空间
  4. ./api-manager.sh --cleanRegistry
  5. # 清理缓存和组件仓库
  6. ./api-manager.sh --reset
复制代码

  • 可选的系统属性:


  • -DhttpPort: 覆盖HTTP端口
  • -DhttpsPort: 覆盖HTTPS端口
  • -DSynapseServerName: 设置synapse服务器名称
  • -DosgiConsole: 启用OSGi控制台
  • -Dsetup: 清理数据库并重新配置

  • 安全配置:
    如果需要保护配置文件中的敏感信息,可以使用secure vault:
  1. # Linux:
  2. ./ciphertool.sh -Dconfigure
  3. # Windows:
  4. ./ciphertool.bat -Dconfigure
复制代码
注意事项:

  • 确保使用正确版本的JDK和Maven
  • 构建过程可能需要一些时间,因为需要下载依赖
  • 如果遇到构建错误,可以尝试添加 -DskipTests 参数跳过测试
  • 确保有足够的内存和磁盘空间
  • 如果使用IDE,确保正确配置JDK版本和Maven设置
如果您在构建过程中遇到任何具体问题,请告诉我,我会帮您解决。
错误列表

1.png

解决错误

1 查看jdk版本,需要是jdk11
2 添加settings.xml里的仓库
  1. <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  2.           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3.           xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  4.     <profiles>
  5.         <profile>
  6.             <id>wso2-nexus</id>
  7.             <repositories>
  8.                 <repository>
  9.                     <id>wso2-nexus</id>
  10.                     <name>WSO2 internal Repository</name>
  11.                     <url>https://maven.wso2.org/nexus/content/groups/wso2-public/</url>
  12.                     <releases>
  13.                         <enabled>true</enabled>
  14.                         <updatePolicy>daily</updatePolicy>
  15.                         <checksumPolicy>ignore</checksumPolicy>
  16.                     </releases>
  17.                 </repository>
  18.             </repositories>
  19.         </profile>
  20.     </profiles>
  21.    
  22.         wso2-nexus</activeProfile>
  23.     </activeProfiles>
  24. </settings>
复制代码
打包镜像

我来帮您说明如何将本地修改打包到WSO2 API Manager 4.2.0-alpha的Docker镜像中。这里有两种主要方法:

  • 使用官方的Docker构建方法:
首先让我查看一下项目中的Docker相关文件:
Search files...
让我继续搜索Docker相关的配置:
Search files...
根据搜索结果,我发现在v4.2.0-alpha分支中没有直接的Docker构建文件。不过我可以为您提供两种方法来将本地修改打包到Docker镜像中:
方法1:使用官方Docker镜像作为基础镜像

  • 首先构建修改后的项目:
  1. mvn clean install -DskipTests
复制代码

  • 创建一个Dockerfile:
  1. ADD alpine-minirootfs-3.21.3-x86_64.tar.gz / # buildkit
  2. CMD ["/bin/sh"]
  3. ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
  4. RUN /bin/sh -c apk add
  5. ENV JAVA_VERSION=jdk-21.0.5+11
  6. ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
  7. RUN /bin/sh -c set -eux;
  8. LABEL maintainer=WSO2 Docker Maintainers <dev@wso2.org>
  9. ARG USER=wso2carbon
  10. ARG USER_ID=10001
  11. ARG USER_GROUP=wso2
  12. ARG USER_GROUP_ID=10001
  13. ARG USER_HOME=/home/wso2carbon
  14. ARG WSO2_SERVER_NAME=wso2am
  15. ARG WSO2_SERVER_VERSION=4.5.0
  16. ARG WSO2_SERVER_REPOSITORY=product-apim
  17. ARG WSO2_SERVER=wso2am-4.5.0
  18. ARG WSO2_SERVER_HOME=/home/wso2carbon/wso2am-4.5.0
  19. ARG WSO2_SERVER_DIST_URL=https://github.com/wso2/product-apim/releases/download/v4.5.0/wso2am-4.5.0.zip
  20. ARG MOTD=printf "\n Welcome to
  21. ENV ENV=/home/wso2carbon/.ashrc
  22. RUN |12 USER=wso2carbon USER_ID=10001 USER_GROUP=wso2
  23. COPY --chown=wso2carbon:wso2 docker-entrypoint.sh /home/wso2carbon/ #
  24. RUN |12 USER=wso2carbon USER_ID=10001 USER_GROUP=wso2
  25. RUN |12 USER=wso2carbon USER_ID=10001 USER_GROUP=wso2
  26. USER 10001
  27. WORKDIR /home/wso2carbon
  28. ENV WORKING_DIRECTORY=/home/wso2carbon WSO2_SERVER_HOME=/home/wso2carbon/wso2am-4.5.0
  29. EXPOSE map[11111/tcp:{} 5672/tcp:{} 8243/tcp:{} 8280/tcp:{}
  30. ENTRYPOINT ["/home/wso2carbon/docker-entrypoint.sh"]
复制代码

  • 构建Docker镜像:
  1. docker build -t wso2am-custom:4.5.0-alpine .
复制代码

  • 运行自定义镜像:
  1. docker run -p 9443:9443 wso2am-custom:4.2.0-alpine
复制代码
方法2:从头构建Docker镜像

  • 首先构建修改后的项目:
  1. mvn clean install -DskipTests
复制代码

  • 创建一个完整的Dockerfile:
[code]# 创建Dockerfilecat > Dockerfile
您需要登录后才可以回帖 登录 | 立即注册