diff --git a/others/dev/build_test_env.sh b/others/dev/build_test_env.sh new file mode 100755 index 00000000..b14f4bb1 --- /dev/null +++ b/others/dev/build_test_env.sh @@ -0,0 +1,19 @@ +#!/bin/bash +# 构建 PowerJob 测试环境 + +echo "================== 关闭全部服务 ==================" +docker-compose down +echo "================== 构建 jar ==================" +cd `dirname $0`/../.. || exit +# mvn clean package -Pdev -DskipTests -U -e -pl powerjob-server,powerjob-worker-agent -am +# -U:强制检查snapshot库 -pl:指定需要构建的模块,多模块逗号分割 -am:同时构建依赖模块,一般与pl连用 -Pxxx:指定使用的配置文件 +mvn clean package -Pdev -DskipTests +echo "================== 拷贝 jar ==================" +/bin/cp -rf powerjob-server/powerjob-server-starter/target/*.jar powerjob-server/docker/powerjob-server.jar +/bin/cp -rf powerjob-worker-agent/target/*.jar powerjob-worker-agent/powerjob-agent.jar +ls -l powerjob-server/docker/powerjob-server.jar +ls -l powerjob-worker-agent/powerjob-agent.jar + +cd others/dev +docker-compose build +docker-compose up \ No newline at end of file diff --git a/others/dev/docker-compose.yml b/others/dev/docker-compose.yml new file mode 100644 index 00000000..2b0e53ca --- /dev/null +++ b/others/dev/docker-compose.yml @@ -0,0 +1,74 @@ +# 构建 PowerJob 测试环境 + +version: '3' +services: + powerjob-mysql: + build: + context: ../ + environment: + MYSQL_ROOT_HOST: "%" + MYSQL_ROOT_PASSWORD: No1Bug2Please3! + restart: always + container_name: powerjob-mysql + image: powerjob/powerjob-mysql:test_env + ports: + - "3309:3306" + volumes: + - ./powerjob-data/powerjob-mysql:/var/lib/mysql + command: --lower_case_table_names=1 + + powerjob-server: + build: + context: ../../powerjob-server/docker + container_name: powerjob-server + image: powerjob/powerjob-server:test_env + restart: always + depends_on: + - powerjob-mysql + environment: + PARAMS: "--oms.mongodb.enable=false --spring.datasource.core.jdbc-url=jdbc:mysql://powerjob-mysql:3306/powerjob-daily?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai" + ports: + - "7700:7700" + - "10086:10086" + - "10010:10010" + volumes: + - ./powerjob-data/powerjob-server:/root/powerjob/server/ + + powerjob-worker-agent: + build: + context: ../../powerjob-worker-agent + container_name: powerjob-worker-agent + image: powerjob/powerjob-worker-agent:test_env + restart: always + depends_on: + - powerjob-mysql + - powerjob-server + ports: + - "5002:5005" + - "10002:10000" + - "27777:27777" + volumes: + - ./powerjob-data/powerjob-worker-agent:/root + entrypoint: + - "sh" + - "-c" + - "./wait-for-it.sh powerjob-server:7700 --strict -- java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=10000 -Dcom.sun.management.jmxremote.rmi.port=10000 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar /powerjob-agent.jar --app powerjob-worker-samples --server powerjob-server:7700" + + powerjob-worker-agent2: + container_name: powerjob-worker-agent2 + image: powerjob/powerjob-worker-agent:test_env + restart: always + depends_on: + - powerjob-mysql + - powerjob-server + ports: + - "5003:5005" + - "10003:10000" + - "27778:27777" + volumes: + - ./powerjob-data/powerjob-worker-agent2:/root + entrypoint: + - "sh" + - "-c" + - "./wait-for-it.sh powerjob-server:7700 --strict -- java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=10000 -Dcom.sun.management.jmxremote.rmi.port=10000 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar /powerjob-agent.jar --app powerjob-worker-samples --server powerjob-server:7700" + diff --git a/powerjob-remote/powerjob-remote-impl-akka/src/main/java/tech/powerjob/remote/akka/AkkaCSInitializer.java b/powerjob-remote/powerjob-remote-impl-akka/src/main/java/tech/powerjob/remote/akka/AkkaCSInitializer.java index 28ba093e..cad05a8f 100644 --- a/powerjob-remote/powerjob-remote-impl-akka/src/main/java/tech/powerjob/remote/akka/AkkaCSInitializer.java +++ b/powerjob-remote/powerjob-remote-impl-akka/src/main/java/tech/powerjob/remote/akka/AkkaCSInitializer.java @@ -53,7 +53,7 @@ public class AkkaCSInitializer implements CSInitializer { Config akkaBasicConfig = ConfigFactory.load(AkkaConstant.AKKA_CONFIG); Config akkaFinalConfig = ConfigFactory.parseMap(overrideConfig).withFallback(akkaBasicConfig); - log.info("[PowerJob-AKKA] try to start AKKA System by config: {}", akkaFinalConfig); + log.info("[PowerJob-AKKA] try to start AKKA System."); // 启动时绑定当前的 actorSystemName String actorSystemName = AkkaConstant.fetchActorSystemName(config.getServerType()); diff --git a/powerjob-worker-agent/Dockerfile b/powerjob-worker-agent/Dockerfile index f33b43e1..c7b3160e 100644 --- a/powerjob-worker-agent/Dockerfile +++ b/powerjob-worker-agent/Dockerfile @@ -13,7 +13,10 @@ RUN apt-get update && \ && apt-get clean \ && apt-get autoclean \ && rm -rf /var/lib/apt/lists/* - +# 安装 wait-for-it 脚本 +RUN curl -o wait-for-it.sh https://gitee.com/KFCFans/wait-for-it/raw/master/wait-for-it.sh +RUN chmod +x wait-for-it.sh +# 拷贝主文件 COPY powerjob-agent.jar /powerjob-agent.jar # 暴露端口(AKKA-Client) EXPOSE 27777