增加docker一键运行脚本:参考readme.cmd

预览文件bug fix
pull/1/head
liuwx_gitee 2 years ago
parent a3065c6384
commit abe99de5fa

@ -130,7 +130,11 @@
项目下载和运行
----
开发环境准备与运行,请参考:开发环境准备与运行.md
##### 一键运行脚本
快速部署docker镜像请使用Centos 7以上版本最低配置2C/4G。下载:[一键运行脚本](http://www.kykms.cn/install_community.sh)
部署成功访问http://Your_IP:3000
##### 开发环境准备与运行
请参考:[开发环境准备与运行](开发环境准备与运行.md)
- 默认登录账号: admin/123456

@ -0,0 +1,4 @@
NODE_ENV=docker
VUE_APP_API_BASE_URL=/api
VUE_APP_CAS_BASE_URL=http://localhost:8888/cas
VUE_APP_ONLINE_BASE_URL=http://localhost/onlinePreview

@ -1,29 +1,4 @@
FROM nginx
MAINTAINER hnliuwx@gmail.com
VOLUME /tmp
ENV LANG en_US.UTF-8
RUN echo "server { \
listen 3000; \
location ^~ /ky { \
proxy_pass http://localhost:8080/ky/; \
proxy_set_header Host localhost; \
proxy_set_header X-Real-IP \$remote_addr; \
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for; \
} \
#解决Router(mode: 'history')模式下,刷新路由地址不能找到页面的问题 \
location / { \
root /var/www/html/; \
index index.html index.htm; \
if (!-e \$request_filename) { \
rewrite ^(.*)\$ /index.html?s=\$1 last; \
break; \
} \
} \
access_log /var/log/nginx/access.log ; \
} " > /etc/nginx/conf.d/default.conf \
&& mkdir -p /var/www \
&& mkdir -p /var/www/html
ADD dist/ /var/www/html/
EXPOSE 80
EXPOSE 443
EXPOSE 3000

@ -0,0 +1,78 @@
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log notice;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
gzip on;
gzip_buffers 16 8k;
gzip_comp_level 6;
gzip_http_version 1.1;
gzip_min_length 256;
gzip_proxied any;
gzip_vary on;
gzip_types
text/xml application/xml application/atom+xml application/rss+xml application/xhtml+xml image/svg+xml
text/javascript application/javascript application/x-javascript
text/x-json application/json application/x-web-app-manifest+json
text/css text/plain text/x-component
font/opentype application/x-font-ttf application/vnd.ms-fontobject
image/x-icon;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
server {
listen 3000;
#server添加下面内容 解决Router(mode: 'history')模式下,刷新路由地址不能找到页面的问题
location / {
root /usr/share/nginx/html;
index index.html index.htm;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.html?s=$1 last;
break;
}
}
location /api/{
if ($request_method = 'OPTIONS') { #处理预检请求
add_header 'Access-Control-Allow-Origin' '*'; #此处理客户端预检请求->nginx服务器跨域问题
add_header 'Access-Control-Allow-Headers' '*'; #此允许客户端请求携带header自定义参数也可以指定具体参数名称
return 204;
}
if ($request_method != 'OPTIONS') { #正常请求
#add_header 'Access-Control-Allow-Origin' '*'; #此处根据服务端api是否配置跨域决定是否配置不能重复配置
}
proxy_pass http://kykms:8080/ky/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}

@ -6,6 +6,8 @@
"pre": "cnpm install || yarn --registry https://registry.npm.taobao.org || npm install --registry https://registry.npm.taobao.org ",
"serve:development": "vue-cli-service serve --mode development",
"build:test": "vue-cli-service build --mode test",
"build:docker": "vue-cli-service build --mode docker",
"serve:docker": "vue-cli-service serve --mode docker",
"build:production": "vue-cli-service build --mode production",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint",

@ -747,7 +747,8 @@
showPreviewKmDoc(id,title) {
this.showTitlePDF=true;
this.title=" ";
this.TitlePDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + '?docId=' + id
//this.TitlePDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + '?docId=' + id
this.PDFurl = this.url.previewKmDoc + "?docId=" + record.id;
},
@ -908,7 +909,8 @@
this.versions = this.model.versions;
this.formDisabled = boolFormDisabled;
this.businessTypes = this.model.businessTypes;
this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
// this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
this.PDFurl = this.url.previewKmDoc + "?docId=" + record.id;
this.pdfLoading = true;
this.pdfShow = true;

@ -553,7 +553,8 @@
this.versions = this.model.versions;
this.formDisabled = boolFormDisabled;
this.businessTypes = this.model.businessTypes;
this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
// this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
this.PDFurl = this.url.previewKmDoc + "?docId=" + record.id;
this.pdfLoading = true;
this.pdfShow = true;
if (this.model.previewFileId != this.model.originalPreviewFileId) {

@ -503,7 +503,8 @@
//
previewKmDoc(record, boolFormDisabled) {
this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
// this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
this.PDFurl = this.url.previewKmDoc + "?docId=" + record.id;
this.visible = true;
this.pdfLoading = true;
this.pdfShow = true;

@ -627,7 +627,8 @@
//
previewKmDoc(record) {
this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
//this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
this.PDFurl = this.url.previewKmDoc + "?docId=" + record.id;
this.title ='预览 - ' + record.title;
this.visible = true;
this.pdfLoading = true;

@ -759,7 +759,8 @@
//
previewKmDoc(record) {
this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
// this.PDFurl = window._CONFIG['domianURL'] + this.url.previewKmDoc + "?docId=" + record.id;
this.PDFurl = this.url.previewKmDoc + "?docId=" + record.id;
this.visible = true;
this.pdfLoading = true;
this.pdfShow = true;

@ -2,4 +2,4 @@ FROM elasticsearch:7.6.1
MAINTAINER hnliuwx@gmail.com
RUN /usr/share/elasticsearch/bin/elasticsearch-plugin install -b http://www.kykms.cn/elasticsearch-analysis-ik-7.6.1.zip
RUN /usr/share/elasticsearch/bin/elasticsearch-plugin install -b http://qn.kykms.cn/elasticsearch-analysis-ik-7.6.1.zip

@ -53,10 +53,11 @@ services:
kykms-nginx:
image: mahonelau/kykms-nginx:business
restart: always
depends_on:
- kykms-mysql
- kykms-redis
- kykms
- kykms-ES
container_name: kykms-nginx
ports:
- 3000:3000
- 3000:3000

@ -0,0 +1,66 @@
version: '2'
services:
kymks-mysql:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_ROOT_HOST: '%'
TZ: Asia/Shanghai
restart: always
container_name: kykms-mysql
volumes:
- /home/docker/data/mysql:/var/lib/mysql
command:
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
--max_allowed_packet=128M
ports:
- 3306:3306
kymks-redis:
image: redis:5.0
ports:
- 6379:6379
restart: always
container_name: kykms-redis
kymks-ES:
image: elasticsearch:7.6.1
restart: always
hostname: kykms-ES
container_name: kykms-ES
volumes:
- /home/docker/data/elasticsearch:/usr/share/elasticsearch/data
ports:
- 9200:9200
- 9300:9300
environment:
discovery.type: single-node
ES_JAVA_OPTS: "-Xms512m -Xmx512m"
cpuset-cpus: 1
m: 2G
kykms-nginx:
image: local-nginx:latest
restart: always
container_name: local-nginx
volumes:
- /home/docker/data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
- /home/docker/data/nginx/html:/usr/share/nginx/html
ports:
- 3000:3000
kykms:
image: kykms:latest
restart: always
privileged: true
container_name: kykms
hostname: kykms
volumes:
- /home/docker/data/kykms:/kykms
- /sys/fs/cgroup:/sys/fs/cgroup
command: /bin/bash -c "java -jar /kykms/jeecg-boot-module-system-2.4.5.jar"
ports:
- 8080:8080

@ -5,8 +5,12 @@ services:
image: mahonelau/kykms-mysql:latest
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_ROOT_HOST: '%'
TZ: Asia/Shanghai
restart: always
container_name: kykms-mysql
volumes:
- /home/docker/data/mysql:/var/lib/mysql
command:
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
@ -24,12 +28,12 @@ services:
container_name: kykms-redis
kykms-ES:
build:
context: ./ES
image: mahonelau/kykms-es:latest
restart: always
hostname: kykms-ES
container_name: kykms-ES
volumes:
- /home/docker/data/elasticsearch:/usr/share/elasticsearch/data
ports:
- 9200:9200
- 9300:9300
@ -52,5 +56,11 @@ services:
image: mahonelau/kykms-nginx:latest
restart: always
container_name: kykms-nginx
volumes:
- /home/docker/data/nginx/conf:/etc/nginx/
- /home/docker/data/nginx/html:/usr/share/nginx/html
ports:
- 3000:81
- 3000:3000

@ -9,6 +9,7 @@ services:
TZ: Asia/Shanghai
restart: always
container_name: kykms-mysql
hostname: kykms-mysql
image: mysql:5.7
command:
--character-set-server=utf8mb4
@ -32,6 +33,8 @@ services:
build:
context: ./ES
image: elasticsearch:7.6.1
volumes:
- /home/docker/data/elasticsearch:/usr/share/elasticsearch/data
restart: always
hostname: kykms-ES
container_name: kykms-ES
@ -55,6 +58,8 @@ services:
- kykms-ES
container_name: kykms
image: kykms
volumes:
- /home/docker/data/kykms:/kykms
hostname: kykms
ports:
- 8080:8080
- 8080:8080

@ -9,17 +9,10 @@ curl -o /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo;
curl -o /etc/yum.repos.d/CentOS7-Base-163.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo;\
yum clean all;\
yum makecache;\
yum install libreoffice-writer.x86_64 -y; \
mkdir /kykms
yum install libreoffice.x86_64 -y;
WORKDIR /kykms
EXPOSE 8080
ADD ./target/jeecg-boot-module-system-2.4.5.jar ./
ADD ./simsun.ttc /usr/share/fonts
CMD /usr/sbin/init;\
sleep 10;\
java -Djava.security.egd=file:/dev/./urandom -jar jeecg-boot-module-system-2.4.5.jar
EXPOSE 8080

@ -0,0 +1,177 @@
server:
port: 8080
tomcat:
max-swallow-size: -1
error:
include-exception: true
include-stacktrace: ALWAYS
include-message: ALWAYS
servlet:
context-path: /ky
compression:
enabled: true
min-response-size: 1024
mime-types: application/javascript,application/json,application/xml,text/html,text/xml,text/plain,text/css,image/*
management:
endpoints:
web:
exposure:
include: metrics,httptrace
##文件上传和转换工具的配置
base:
#上传文件保存的路径
upload-dir: /kykms/KmDocs
# libreOffice安装路径
soffice-path: /usr/bin/soffice
# soffice-path: /opt/libreoffice7.0/program/soffice
one-system-url:
##ElasticSearch服务配置 for highLevelRestClient
esclient:
master-host: kykms-ES
master-port: 9200
spring:
servlet:
multipart:
max-file-size: 2000MB
max-request-size: 2000MB
mail:
host:
username:
password: ??
properties:
mail:
smtp:
auth: true
starttls:
enable: true
required: true
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
aop:
proxy-target-class: true
freemarker:
suffix: .ftl
content-type: text/html
charset: UTF-8
cache: false
prefer-file-system-access: false
template-loader-path:
- classpath:/templates
mvc:
static-path-pattern: /**
resource:
static-locations: classpath:/static/,classpath:/public/
autoconfigure:
exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
datasource:
druid:
stat-view-servlet:
enabled: true
loginUsername: admin
loginPassword: 123456
allow:
web-stat-filter:
enabled: true
dynamic:
druid:
initial-size: 5
min-idle: 5
maxActive: 1000
maxWait: 60000
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT 1 FROM DUAL
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: false
maxPoolPreparedStatementPerConnectionSize: -1
filters: stat,wall,slf4j
connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
datasource:
# 数据库登录信息配置
master:
url: jdbc:mysql://kykms-mysql:3306/km?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
#redis 配置
redis:
database: 0
host: kykms-redis
lettuce:
pool:
max-active: 8
max-idle: 8
max-wait: -1ms
min-idle: 0
shutdown-timeout: 100ms
password: ''
port: 6379
mybatis-plus:
mapper-locations: classpath*:org/jeecg/modules/**/xml/*Mapper.xml
global-config:
banner: false
db-config:
id-type: ASSIGN_ID
table-underline: true
configuration:
#log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
call-setters-on-nulls: true
jeecg :
uploadType: alioss
path :
upload: /opt/upload
webapp: /opt/webapp
shiro:
excludeUrls: /test/jeecgDemo/demo3,/test/jeecgDemo/redisDemo/**,/category/**,/visual/**,/map/**,/jmreport/bigscreen2/**,/sys/loginThird,/KM/EsMgnt/**
oss:
accessKey: ??
secretKey: ??
endpoint: oss-cn-beijing.aliyuncs.com
bucketName: ??
staticDomain: https://static.jeecg.com
minio:
minio_url: http://minio.jeecg.com
minio_name: ??
minio_pass: ??
bucketName: ??
xxljob:
enabled: false
adminAddresses: http://127.0.0.1:9080/xxl-job-admin
appname: ${spring.application.name}
accessToken: ''
address: 127.0.0.1:30007
ip: 127.0.0.1
port: 30007
logPath: logs/jeecg/job/jobhandler/
logRetentionDays: 30
route:
config:
data-id: jeecg-gateway-router
group: DEFAULT_GROUP
data-type: yml
redisson:
address: 127.0.0.1:6379
password:
type: STANDALONE
enabled: true
cas:
prefixUrl: http://cas.example.org:8443/cas
logging:
level:
org.jeecg.modules.system.mapper : info
knife4j:
production: false
basic:
enable: true
username: jeecg
password: jeecg1314

@ -24,13 +24,13 @@ base:
#上传文件保存的路径
upload-dir: /kykms/KmDocs
# libreOffice安装路径
soffice-path: /usr/bin/soffice
# soffice-path: /opt/libreoffice7.0/program/soffice
# soffice-path: /usr/bin/soffice
soffice-path: /opt/libreoffice7.3/program/soffice
one-system-url:
##ElasticSearch服务配置 for highLevelRestClient
esclient:
master-host: kykms-ES
master-host: localhost
master-port: 9200
spring:
@ -96,14 +96,14 @@ spring:
datasource:
# 数据库登录信息配置
master:
url: jdbc:mysql://kykms-mysql:3306/km?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
url: jdbc:mysql://localhost:3306/km?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
#redis 配置
redis:
database: 0
host: kykms-redis
host: localhost
lettuce:
pool:
max-active: 8

@ -4,7 +4,7 @@
<artifactId>jeecg-boot-parent</artifactId>
<version>2.4.5</version>
<packaging>pom</packaging>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
@ -399,5 +399,24 @@
<discovery.server-addr>127.0.0.1:8848</discovery.server-addr>
</properties>
</profile>
</profiles>
</project>
<!-- docker-->
<profile>
<id>docker</id>
<properties>
<!--当前环境-->
<profile.name>docker</profile.name>
<!--配置文件前缀-->
<prefix.name>jeecg</prefix.name>
<!--Nacos配置中心地址-->
<config.server-addr>127.0.0.1:8848</config.server-addr>
<!--Nacos配置中心命名空间,用于支持多环境.这里必须使用ID不能使用名称,默认为空-->
<config.namespace></config.namespace>
<!--Nacos配置分组名称-->
<config.group>DEFAULT_GROUP</config.group>
<!--Nacos服务发现地址-->
<discovery.server-addr>127.0.0.1:8848</discovery.server-addr>
</properties>
</profile>
</profiles>
</project>

Loading…
Cancel
Save