diff --git a/README.md b/README.md index 1ee9ca6c49a34f9847a33b0d45104721e44b7e78..0978db15587bf9d239d5d7d98af36d7e0d954bcc 100644 --- a/README.md +++ b/README.md @@ -43,3 +43,63 @@ com/hccake/ballcat/codegen/GeneratorApplication.java +##### Docker打包 + +采用 dockerfile-maven-plugin 插件生成 docker 镜像,所在路径 ballcat-codegen-backend/pom.xml + +``` + + com.spotify + dockerfile-maven-plugin + + + default + + + build + + + + + ballcat-codegen + latest + + ${project.build.finalName}.jar + + + +``` + +执行 `mvn clean package` 打包命令时会根据 ballcat-codegen-backend 根目录下的 Dockerfile 自动构建 docker 镜像。 + + + +##### docker-compose部署 + +打开 ballcat-codegen-backend 根目录下的 docker-compose.yml文件,修改环境变量配置你的数据库连接信息 + +``` +version: "3.9" + +services: + codegen: + image: ballcat-codegen:latest + container_name: ballcat-codegen + restart: always + ports: + - "7777:7777" + volumes: + - "./logs:/workspace/logs" + environment: + - TZ=Asia/Shanghai + - LANG=en_US.UTF-8 + - JAVA_OPTS=-Xmx256m -Xms256m -Xmn256m -Xss1m + - DB_HOST=192.168.1.66 + - DB_PORT=3306 + - DB_NAME=ballcat_codegen + - DB_USER=root + - DB_PASSWORD=root + +``` + +终端切换到 docker-compose.yml 所在目录,执行 `docker-compose up -d` 一键部署。 diff --git a/ballcat-codegen-backend/Dockerfile b/ballcat-codegen-backend/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..d8be1f5916bec5e4a5ac3c5b5a67eb7878968c3c --- /dev/null +++ b/ballcat-codegen-backend/Dockerfile @@ -0,0 +1,17 @@ +FROM openjdk:8 +MAINTAINER john + +ENV TZ 'Asia/Shanghai' +ENV LANG en_US.UTF-8 +ENV LANGUAGE en_US:en +ENV LC_ALL en_US.UTF-8 + +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone + +VOLUME /tmp + +ARG JAR_FILE +ADD target/${JAR_FILE} /workspace/app.jar + +EXPOSE 8080 +ENTRYPOINT ["java","-jar","-Dfile.encoding=UTF-8","-Dsun.jnu.encoding=UTF-8","/workspace/app.jar"] \ No newline at end of file diff --git a/ballcat-codegen-backend/docker-compose.yml b/ballcat-codegen-backend/docker-compose.yml new file mode 100644 index 0000000000000000000000000000000000000000..313295ac75228737514188d172fa3a13ee140e15 --- /dev/null +++ b/ballcat-codegen-backend/docker-compose.yml @@ -0,0 +1,20 @@ +version: "3.9" + +services: + codegen: + image: ballcat-codegen:latest + container_name: ballcat-codegen + restart: always + ports: + - "7777:7777" + volumes: + - "./logs:/workspace/logs" + environment: + - TZ=Asia/Shanghai + - LANG=en_US.UTF-8 + - JAVA_OPTS=-Xmx256m -Xms256m -Xmn256m -Xss1m + - DB_HOST=192.168.1.66 + - DB_PORT=3306 + - DB_NAME=ballcat_codegen + - DB_USER=root + - DB_PASSWORD=root diff --git a/ballcat-codegen-backend/pom.xml b/ballcat-codegen-backend/pom.xml index bdbd7adff9d6c9a82ffffb177778b014e43cda5a..148f1169a4a463575d13a33a404e6357684b92e4 100644 --- a/ballcat-codegen-backend/pom.xml +++ b/ballcat-codegen-backend/pom.xml @@ -105,6 +105,7 @@ + ballcat-codegen true @@ -189,6 +190,27 @@ + + + com.spotify + dockerfile-maven-plugin + + + default + + + build + + + + + ballcat-codegen + latest + + ${project.build.finalName}.jar + + + \ No newline at end of file diff --git a/ballcat-codegen-backend/src/main/resources/application-dev.yml b/ballcat-codegen-backend/src/main/resources/application-dev.yml index bef7f37ac10b53af43e76cc9e78d2ecb25c7dba1..226ba48dc90d09bc1ce3f5993b38da96f9e5020a 100644 --- a/ballcat-codegen-backend/src/main/resources/application-dev.yml +++ b/ballcat-codegen-backend/src/main/resources/application-dev.yml @@ -1,6 +1,5 @@ spring: datasource: - url: jdbc:mysql://mysql:3306/ballcat_codegen?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&createDatabaseIfNotExist=true - username: root - password: '123456' - + url: jdbc:mysql://${DB_HOST:ballcat-mysql}:${DB_PORT:3306}/${DB_NAME:ballcat_codegen}?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&createDatabaseIfNotExist=true + username: ${DB_USER:root} + password: ${DB_PASSWORD:123456} diff --git a/ballcat-codegen-backend/src/main/resources/application-prod.yml b/ballcat-codegen-backend/src/main/resources/application-prod.yml new file mode 100644 index 0000000000000000000000000000000000000000..226ba48dc90d09bc1ce3f5993b38da96f9e5020a --- /dev/null +++ b/ballcat-codegen-backend/src/main/resources/application-prod.yml @@ -0,0 +1,5 @@ +spring: + datasource: + url: jdbc:mysql://${DB_HOST:ballcat-mysql}:${DB_PORT:3306}/${DB_NAME:ballcat_codegen}?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&createDatabaseIfNotExist=true + username: ${DB_USER:root} + password: ${DB_PASSWORD:123456} diff --git a/ballcat-codegen-backend/src/main/resources/logback-spring.xml b/ballcat-codegen-backend/src/main/resources/logback-spring.xml index 6c1dfa4080abc2f287d04787c95f519b02b85bdd..a56dda71948cc0e01a367d35fe39e409cb613fc7 100644 --- a/ballcat-codegen-backend/src/main/resources/logback-spring.xml +++ b/ballcat-codegen-backend/src/main/resources/logback-spring.xml @@ -1,7 +1,7 @@ - + diff --git a/ballcat-codegen-frontend/components.d.ts b/ballcat-codegen-frontend/components.d.ts index eed31f3bc338c542b28b168f8b6cd04fd15f761f..d52394252b68378816c6e100fef3985200f4af9e 100644 --- a/ballcat-codegen-frontend/components.d.ts +++ b/ballcat-codegen-frontend/components.d.ts @@ -21,6 +21,7 @@ declare module '@vue/runtime-core' { ADescriptionsItem: typeof import('ant-design-vue/es')['DescriptionsItem'] ADirectoryTree: typeof import('ant-design-vue/es')['DirectoryTree'] ADivider: typeof import('ant-design-vue/es')['Divider'] + AEmpty: typeof import('ant-design-vue/es')['Empty'] AForm: typeof import('ant-design-vue/es')['Form'] AFormItem: typeof import('ant-design-vue/es')['FormItem'] AInput: typeof import('ant-design-vue/es')['Input'] diff --git a/pom.xml b/pom.xml index db4cf3a0d19e5978cffc01167b7f0c72b580ffdd..79b9bd82764ee91771628d0733f3c6004b2423e2 100644 --- a/pom.xml +++ b/pom.xml @@ -22,6 +22,12 @@ 1.4.1 true + + 1.8 + ${java.version} + ${java.version} + UTF-8 + UTF-8