diff --git a/.gitignore b/.gitignore index 52c1b008..a14e191f 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ target/ .DS_Store .gitattributes +mysql_data/ diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..48807f62 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,13 @@ +FROM maven:3-jdk-8-slim as build +WORKDIR /xxl-job +COPY settings.xml /root/.m2/settings.xml +COPY pom.xml pom.xml +COPY xxl-job-admin xxl-job-admin +COPY xxl-job-core xxl-job-core +COPY xxl-job-executor-samples xxl-job-executor-samples +RUN mvn package -P release + +FROM openjdk:8-jre-slim +WORKDIR /opt +COPY --from=build /xxl-job/xxl-job-admin/target/xxl-job-admin-*.jar xxl-job-admin.jar +COPY --from=build /xxl-job/xxl-job-executor-samples/xxl-job-executor-sample-springboot/target/xxl-job-executor-sample-springboot-*.jar xxl-job-executor.jar diff --git a/doc/db/Dockerfile b/doc/db/Dockerfile new file mode 100644 index 00000000..fb347498 --- /dev/null +++ b/doc/db/Dockerfile @@ -0,0 +1,3 @@ +FROM mysql:5.7 +WORKDIR /docker-entrypoint-initdb.d +COPY tables_xxl_job.sql tables_xxl_job.sql diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 00000000..b3475c24 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,27 @@ +version: "3" +services: + xxl-job-db: + build: + context: doc/db + dockerfile: Dockerfile + environment: + MYSQL_ROOT_PASSWORD: "root_pwd" + ports: + - "3306:3306" + volumes: + - ./mysql_data:/var/lib/mysql + xxl-job-admin: + build: + context: . + dockerfile: Dockerfile + image: xxl-job + depends_on: + - xxl-job-db + ports: + - "8080:8080" + command: java -jar xxl-job-admin.jar + xxl-job-executor: + image: xxl-job + depends_on: + - xxl-job-admin + command: java -jar xxl-job-executor.jar diff --git a/settings.xml b/settings.xml new file mode 100644 index 00000000..28e2949c --- /dev/null +++ b/settings.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + aliyunmaven + * + 阿里云公共仓库 + https://maven.aliyun.com/repository/public + + + + + + + diff --git a/xxl-job-admin/src/main/resources/application.properties b/xxl-job-admin/src/main/resources/application.properties index afe93b42..26521c27 100644 --- a/xxl-job-admin/src/main/resources/application.properties +++ b/xxl-job-admin/src/main/resources/application.properties @@ -23,7 +23,7 @@ mybatis.mapper-locations=classpath:/mybatis-mapper/*Mapper.xml #mybatis.type-aliases-package=com.xxl.job.admin.core.model ### xxl-job, datasource -spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai +spring.datasource.url=jdbc:mysql://xxl-job-db:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai spring.datasource.username=root spring.datasource.password=root_pwd spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver diff --git a/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/resources/application.properties b/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/resources/application.properties index e067db4f..aa873d03 100644 --- a/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/resources/application.properties +++ b/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/resources/application.properties @@ -8,7 +8,7 @@ logging.config=classpath:logback.xml ### xxl-job admin address list, such as "http://address" or "http://address01,http://address02" -xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin +xxl.job.admin.addresses=http://xxl-job-admin:8080/xxl-job-admin ### xxl-job, access token xxl.job.accessToken=