From 6145e97bb9b97e87a9a90810bafc891160e2bf26 Mon Sep 17 00:00:00 2001 From: wans <747101512@qq.com> Date: Tue, 28 Dec 2021 16:16:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0docker=E9=83=A8=E7=BD=B2?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 7 + src/main/resources/application-prod.yml | 167 ++++++++++++++++++++++++ 2 files changed, 174 insertions(+) create mode 100644 Dockerfile create mode 100644 src/main/resources/application-prod.yml diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..f552218 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,7 @@ +FROM openjdk:8u292-jre-buster +ARG JAR_FILE=/target/*.jar +COPY ${JAR_FILE} system-knowledge-library-0.0.1-SNAPSHOT.jar +ENTRYPOINT ["java","-jar","-Dspring.profiles.active=prod","/system-knowledge-library-0.0.1-SNAPSHOT.jar"] + +# 时区问题 +RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone \ No newline at end of file diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml new file mode 100644 index 0000000..fe7a428 --- /dev/null +++ b/src/main/resources/application-prod.yml @@ -0,0 +1,167 @@ +server: + port: 7011 + ip: 1.24.238.149 + url: http://${server.ip}:37210/population + system-title: 人口信息系统 + system-sub-title: 人口信息 + #default-index-page: + nav-page: ${api-path.user-center-2} + servlet: + context-path: /population + +spring: + login-url: /oauth/login + login-failure: /oauth/login?error + login-process: /userlogin + assets-matchers: /assets/** + thymeleaf: + prefix: classpath:/templates/ + suffix: .html + mode: HTML5 + encoding: UTF-8 + cache: false + main: + allow-bean-definition-overriding: true + servlet: + multipart: + max-file-size: 1GB + max-request-size: 1GB + datasource: + druid: + url: jdbc:mysql://192.168.158.18:3306/db_smart_city_population?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&autoReconnect=true&failOverReadOnly=false&useSSL=false&serverTimezone=UTC&nullCatalogMeansCurrent=true + db-type: mysql + driver-class-name: com.mysql.cj.jdbc.Driver + username: tsroot + password: TSkj@0471.TSROOT + initial-size: 2 + min-idle: 2 + max-active: 200 + max-wait: 60000 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 300000 + validation-query: SELECT 1 FROM DUAL + test-while-idle: true + test-on-borrow: false + test-on-return: false + pool-prepared-statements: true + max-pool-prepared-statement-per-connection-size: 10 + filter: + commons-log: + connection-logger-name: stat,wall,log4j + stat: + log-slow-sql: true + slow-sql-millis: 2000 + connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 + use-global-data-source-stat: true + data: + mongodb: + uri: mongodb://smartcity:smartcity@192.168.158.20:6011/smartcity + redis: + database: 6 + host: 192.168.158.20 + port: 6012 + password: TSkj@0471.REDIS + timeout: 3000ms + jedis: + pool: + max-active: 8 + max-wait: 1ms + max-idle: 8 + min-idle: 0 + kafka: + bootstrap-servers: 192.168.158.14:9092 + producer: + # 写入失败时,重试次数。当leader节点失效,一个repli节点会替代成为leader节点,此时可能出现写入失败, + # 当retris为0时,produce不会重复。retirs重发,此时repli节点完全成为leader节点,不会产生消息丢失。 + retries: 0 + #procedure要求leader在考虑完成请求之前收到的确认数,用于控制发送记录在服务端的持久化,其值可以为如下: + #acks = 0 如果设置为零,则生产者将不会等待来自服务器的任何确认,该记录将立即添加到套接字缓冲区并视为已发送。在这种情况下,无法保证服务器已收到记录,并且重试配置将不会生效(因为客户端通常不会知道任何故障),为每条记录返回的偏移量始终设置为-1。 + #acks = 1 这意味着leader会将记录写入其本地日志,但无需等待所有副本服务器的完全确认即可做出回应,在这种情况下,如果leader在确认记录后立即失败,但在将数据复制到所有的副本服务器之前,则记录将会丢失。 + #acks = all 这意味着leader将等待完整的同步副本集以确认记录,这保证了只要至少一个同步副本服务器仍然存活,记录就不会丢失,这是最强有力的保证,这相当于acks = -1的设置。 + #可以设置的值为:all, -1, 0, 1 + acks: 1 + consumer: + group-id: SmartCity + # smallest和largest才有效,如果smallest重新0开始读取,如果是largest从logfile的offset读取。一般情况下我们都是设置smallest + auto-offset-reset: earliest + # 设置自动提交offset + enable-auto-commit: true + # 如果'enable.auto.commit'为true,则消费者偏移自动提交给Kafka的频率(以毫秒为单位),默认值为5000。 + auto-commit-interval: 100 + max-poll-records: 5 + # 流程引擎 + activiti: + # flase: 默认值。activiti在启动时,会对比数据库表中保存的版本,如果没有表或者版本不匹配,将抛出异常。 + # true: activiti会对数据库中所有表进行更新操作。如果表不存在,则自动创建。 + # create_drop: 在activiti启动时创建表,在关闭时删除表(必须手动关闭引擎,才能删除表)。 + # drop-create: 在activiti启动时删除原来的旧表,然后在创建新表(不需要手动关闭引擎) + database-schema-update: true + #检测历史表是否存在 + db-history-used: true + # 记录历史等级 可配置的历史级别有none, acitivity, audit, all + history-level: full + # 检查流程定义 + check-process-definitions: false + rest-api-enabled: true + rest-api-servlet-name: activiti-swagger-document + SpringProcessEngineConfiguration: + activityFontName: 宋体 + labelFontName: 宋体 + dataSource: datasource + +mybatis: + config-location: classpath:mybatis/mybatis-config.xml + mapper-locations: classpath*:mybatis/mapper/**/*.xml + +access-control: + role-permission: false + +swagger: + base-package-list: ink.wgink,cn.com.tenlion + +file: + upload-path: /project/UploadFiles/ + image-types: png,jpg,jpeg,gif,blob + video-types: mp4,rmvb + audio-types: mp3,wmv,amr + file-types: doc,docx,xls,xlsx,ppt,pptx,txt,zip,rar,apk,pdf + max-file-count: 6 + image-output-quality: 0.4 + # 启用minIo + use-min-io: true + # 与use-min-io配套使用 + min-io: + endpoint: http://192.168.158.17:9001 + access-key: smartcity + secret-key: smartcity + +api-path: + #103 155 + user-center: http://10.25.242.190:37210/usercenter + user-center-2: http://1.24.238.149:37210/usercenter + +security: + oauth2: + oauth-server: ${api-path.user-center-2} + oauth-logout: ${security.oauth2.oauth-server}/logout?redirect_uri=${server.url} #外网 + client: + client-id: 8efff6f8f7fc463e8eb63e3b5174f448 + client-secret: b1hPdUE1NkJlM1RmbS9MTVlnYUR2QTI5NEcyTFpGandTNC8zVTh5cW5CTGxIdG9KZmEyTjJIRnI0dG1McEdEVA== + user-authorization-uri: ${security.oauth2.oauth-server}/oauth2_client/authorize #外网 + access-token-uri: ${api-path.user-center}/oauth2_client/token + grant-type: authorization_code + resource: + jwt: + key-uri: ${api-path.user-center}/oauth2_client/token_key + token-info-uri: ${api-path.user-center}/oauth2_client/check_token + user-info-uri: ${api-path.user-center}/user + authorization: + check-token-access: ${api-path.user-center}/oauth2_client/token_key + +logging: + enable-api-log: false + file: + name: /project/logs/population-logs.log + level: + root: error + ink.wgink: debug