edp963 / davinci-docker Goto Github PK
View Code? Open in Web Editor NEWDavinci Docker Deployment
License: Apache License 2.0
Davinci Docker Deployment
License: Apache License 2.0
基于davinci当前开发分支构建的镜像 ,在docker-compose.yml中修改为
edp963/davinci:v0.3.0-beta.10.pre
可以体验新特性:
1.oauth2登录支持
2.sqlserver druid卡死的bug
docker方式启后,在容器内部可以通过curl http://localhost:8080 获取响应,但在宿主机无法通过http://localhost:58083 访问(端口可以确定是映射的宿主机的58083端口),求助,谢谢
1.配置邮箱的密码是授权码,不是登陆密码,否则无法创建账户。日志中会报错:javax.mail.AuthenticationFailedException。以QQ邮箱为例,授权码在邮箱设置界面中获取。
2.注册后,会收到激活邮件,这个激活的URL使用的0.0.0开头的地址。需要将地址修改为发布的地址,来完成激活
容器状态为exited
| \ __ _ __ _() _ _ __ ()
| |) |/ ` |\ V /| || ' \ / || |
|/ _,| _/ ||||||_||_|
Davinci version: 0.3
Spring Boot version: 2.0.4.RELEASE
2020-05-12 04:47:41.006 INFO 16 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
2020-05-12 04:47:41.158 INFO 16 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
2020-05-12 04:47:41.158 INFO 16 --- [main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode!
main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.32
2020-05-12 04:47:44.298 INFO 16 --- [ost-startStop-1] o.a.catalina.core.AprLifecycleListener : The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/usr/java/packages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib]
2020-05-12 04:47:44.602 INFO 16 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
ich allows optimal performance in production environments was not found on the java.library.path: [/usr/java/packages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib]
2020-05-12 04:47:44.602 INFO 16 --- [localhost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2020-05-12 04:47:45.798 INFO 16 --- [main] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} inited
2020-05-12 04:47:49.091 WARN 16 --- [main] org.thymeleaf.templatemode.TemplateMode : [THYMELEAF][main] Template Mode 'HTML5' is deprecated. Using Template Mode 'HTML' instead.
2020-05-12 04:47:49.333 INFO 16 --- [main] o.s.l.c.support.AbstractContextSource : Property 'userDn' not set - anonymous context will be used for read-write operations
FO 16 --- [ main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.0 created.
2020-05-12 04:47:50.030 INFO 16 --- [ main] org.quartz.simpl.RAMJobStore : RAMJobStore initialized.
2020-05-12 04:47:50.035 INFO 16 --- [ main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.0) 'schedulerFactoryBean' with instanceId 'NON_CLUSTERED'
Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.
NOT STARTED.
Currently in standby mode.
Number of jobs executed: 0
Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads.
Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.
2020-05-12 04:47:50.038 INFO 16 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'schedulerFactoryBean' initialized from an externally provided properties instance.
2020-05-12 04:47:50.038 INFO 16 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.0
2020-05-12 04:47:50.039 INFO 16 --- [ main] org.quartz.core.QuartzScheduler : JobFactory set to: edp.core.config.AutowireSpringBeanJobFactory@4438938e
is not clustered.
2020-05-12 04:47:50.038 INFO 16 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'schedulerFactoryBean' initialized from an externally provided properties instance.
2020-05-12 04:47:50.038 INFO 16 --- [main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.0
2020-05-12 04:47:50.039 INFO 16 --- [main] org.quartz.core.QuartzScheduler : JobFactory set to: edp.core.config.AutowireSpringBeanJobFactory@4438938e
2020-05-12 04:47:55.661 INFO 16 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Context refreshed
2020-05-12 04:47:55.707 INFO 16 --- [main] d.s.w.p.DocumentationPluginsBootstrapper : Found 1 custom documentation plugin(s)
2020-05-12 04:47:55.779 INFO 16 --- [main] s.d.s.w.s.ApiListingReferenceScanner : Scanning for api listing references
tarUsingPOST_1
7:58.794 INFO 16 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: deleteProjectUsingDELETE_1
2020-05-12 04:47:58.881 INFO 16 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: getRoleUsingGET_1
2020-05-12 04:47:59.527 INFO 16 --- [main] .d.s.w.r.o.CachingOperationNameGenerator : Generating unique operation named: uploadAvatarUsingPOST_1
stom datasource finish
2020-05-12 04:48:00.141 INFO 16 --- [ main] edp.davinci.runner.CronJobRunner : Load cron job finish
gPOST_1
2020-05-12 04:47:59.857 INFO 16 --- [main] org.quartz.core.QuartzScheduler : Scheduler schedulerFactoryBean_$_NON_CLUSTERED started.
2020-05-12 04:48:00.039 INFO 16 --- [main] e.davinci.runner.CustomDataSourceRunner : Load custom datasource finish
2020-05-12 04:48:00.141 INFO 16 --- [main] edp.davinci.runner.CronJobRunner : Load cron job finish
container_linux.go:349: starting container process caused "exec: "./bin/start-server.sh": permission denied": unknown.
执行docker run 时出现此错误
请问,我安装docker后,按照说明教程设置了‘city’字段的行级权限,但是用另外一个账号登录时,发现控制不了权限,而且报“Internal Server Error”错误,请问是否是docker 版本的问题呢?
查看日志,有如下错误:
./bin/docker-entrypoint.sh: line 5: /initdb/davinci.sql: Permission denied
sed: can't read /initdb/davinci.sql: No such file or directory
使用docker-compose启动镜像,报错:
Method springSecurityFilterChain in org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration required a bean of type 'org.springframework.security.oauth2.client.registration.ClientRegistrationRepository' that could not be found.
Bean method 'clientRegistrationRepository' not loaded because OAuth2 Clients Configured Condition registered clients is not available
试用docker-compose 方式启动了程序,创建了davinci和mysql容器实例,在58080端口UI界面,注册用户后,在登录时,报无用户错误,无法登录
apiVersion: v1
kind: ConfigMap
metadata:
name: davinci-configmap
namespace: davinci
data:
application.yml: |
server:
protocol: http
address: 0.0.0.0
port: 8080
servlet:
context-path: /
## jwt is one of the important configuration of the application
## jwt config cannot be null or empty
jwtToken:
secret: secret
timeout: 1800000
algorithm: HS512
## your datasource config
source:
initial-size: 1
min-idle: 1
max-wait: 30000
max-active: 10
break-after-acquire-failure: true
connection-error-retry-attempts: 1
time-between-eviction-runs-millis: 2000
min-evictable-idle-time-millis: 600000
max-evictable-idle-time-millis: 900000
test-while-idle: true
test-on-borrow: false
test-on-return: false
validation-query: select 1
validation-query-timeout: 10
keep-alive: false
filters: stat
enable-query-log: false
result-limit: 1000000
spring:
mvc:
async:
request-timeout: 30s
rest:
proxy-host:
proxy-port:
proxy-ignore:
## davinci datasource config
datasource:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://mysql:3306/davinci?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useSSL=false
username: root
password: root
driver-class-name: com.mysql.jdbc.Driver
initial-size: 1
min-idle: 1
max-wait: 30000
max-active: 10
break-after-acquire-failure: true
connection-error-retry-attempts: 1
time-between-eviction-runs-millis: 2000
min-evictable-idle-time-millis: 600000
max-evictable-idle-time-millis: 900000
test-while-idle: true
test-on-borrow: false
test-on-return: false
validation-query: select 1
validation-query-timeout: 10
keep-alive: false
filters: stat
## redis config
## please choose either of the two ways
redis:
isEnable: false
## standalone config
host: 127.0.0.1
port: 6379
## cluster config
# cluster:
# nodes:
password:
database: 0
timeout: 1000
jedis:
pool:
max-active: 8
max-wait: 1
max-idle: 8
min-idle: 0
## mail is one of the important configuration of the application
## mail config cannot be null or empty
## some mailboxes need to be set separately password for the SMTP service)
mail:
host: smtp.163.com
port: 465
username: [email protected]
fromAddress: xxxxxxxx
password: xxxxxxxx
nickname: davinci
properties:
smtp:
starttls:
enable: true
required: true
auth: true
mail:
smtp:
ssl:
enable: false
ldap:
urls:
username:
password:
base:
domainName: # domainName 指 企业邮箱后缀,如企业邮箱为:[email protected],这里值为 '@example.com'
security:
oauth2:
enable: false
screenshot:
default_browser: CHROME
timeout_second: 600
chromedriver_path: $your_chromedriver_path$
remote_webdriver_url: $your_remote_webdriver_url$
data-auth-center:
channels:
- name:
base-url:
auth-code:
statistic:
enable: false
# You can use external elasticsearch storage [127.0.0.1:9300]
elastic_urls:
elastic_user:
elastic_index_prefix:
# You can also use external mysql storage
mysql_url:
mysql_username:
mysql_password:
# You can also use external kafka
kafka.bootstrap.servers:
kafka.topic:
java.security.krb5.conf:
java.security.keytab:
java.security.principal:
encryption:
maxEncryptSize: 1024
type: Off # Off is to turn off encryption, to enable encryption, please select AES or RSA
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: davinci
namespace: davinci
spec:
replicas: 1
selector:
matchLabels:
app: davinci
template:
metadata:
labels:
app: davinci
spec:
containers:
- name: davinci
image: davinci:v0.3.0-rc
env:
- name: TZ
value: Asia/Shanghai
ports:
- containerPort: 8080
name: davinci-svc
protocol: TCP
volumeMounts:
- name: davinci-configmap
mountPath: /opt/davinci/config/application.yml
subPath: application.yml
volumes:
- name: davinci-configmap
configMap:
name: davinci-configmap
- name: davselenium
emptyDir:
medium: Memory
---
apiVersion: v1
kind: Service
metadata:
name: davinci-service
namespace: davinci
spec:
type: NodePort
ports:
- port: 8080
protocol: TCP
targetPort: davinci-svc
nodePort: 32202
selector:
app: davinci
[root@localhost davini]# docker-compose --verbose up
compose.config.config.find: Using configuration files: ./docker-compose.yml
ERROR: compose.cli.main.main: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the services
key, or omit the version
key and place your service definitions at the root of the file to use version 1.
升级最新版本,使用容器部署发现部分功能不能使用
编辑-display-复制功能无效
点击 display-复制 页面无反应
display-定时任务-执行失败
报表下载功能异常
docker-compose.yml 这个文件中怎么配置呢。docker是windows版本的。
报错信息如下:
davinci_1 | Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
davinci_1 | at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141)
davinci_1 | at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126)
davinci_1 | at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280)
davinci_1 | at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:382)
davinci_1 | ... 84 more
davinci_1 | 2019-06-10 14:00:22.344 ERROR 25 --- [0.0-8080-exec-3] e.d.core.config.RestExceptionHandler : Mail server connection failed; nested exception is javax.mail.MessagingException: Could not connect to SMTP host: smtp.qq.com, port: 465;
davinci_1 | nested exception is:
davinci_1 | javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target. Failed messages: javax.mail.MessagingException: Could not connect to SMTP host: smtp.qq.com, port: 465;
davinci_1 | nested exception is:
davinci_1 | javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
davinci_1 | 2019-06-10 14:00:22.344 ERROR 25 --- [http-nio-0.0.0.0-8080-exec-3] e.d.core.config.RestExceptionHandler : Mail server connection failed; nested exception is javax.mail.MessagingException: Could not connect to SMTP host: smtp.qq.com, port: 465;
davinci_1 | nested exception is:
davinci_1 | javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target. Failed messages: javax.mail.MessagingException: Could not connect to SMTP host: smtp.qq.com, port: 465;
davinci_1 | nested exception is:
davinci_1 | javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
我猜测是因为 win10 的 SSL 密钥库路径不匹配的问题,但是无法确定。
docker-compose --verbose up
Fail:
INFO 30 --- [main] o.apache.catalina.core.StandardService : Stopping service [Tomcat]
add: SERVER_ADDRESS: d.b.x
show error:
Caused by: java.net.BindException: Cannot assign requested addres
how to config SERVER_ADDRESS in k8s?
创建了两个用户,用户a和用户b;分别属于组织a和组织b;将用户b加入组织a;组织a设置成员可以创建项目,登录用户b创建项目时选择组织b,提示没有权限
Archive: phantomjs-2.1.1-linux-x86_64.tar.bz2
End-of-central-directory signature not found. Either this file is not
a zipfile, or it constitutes one disk of a multi-part archive. In the
latter case the central directory and zipfile comment will be found on
the last disk(s) of this archive.
unzip: cannot find zipfile directory in one of phantomjs-2.1.1-linux-x86_64.tar.bz2 or
phantomjs-2.1.1-linux-x86_64.tar.bz2.zip, and cannot find phantomjs-2.1.1-linux-x86_64.tar.bz2.ZIP, period.
I start davinci by docker, it can run successfully . But a few days, it got some error and I have to restart the docker . I don't know what the problem about it , can anyone help me ?
ps: this is the error log, thanks!
c1f00a1d4eaad4b6789e13778196cf451-rc-hk-davinci-logs (1).txt
我这里尝试将PostgreSQL做为数据源。
按说明文档下载了JDBC驱动(https://jdbc.postgresql.org/download.html )并放置到 /opt/davinci/lib/
但PostgreSQL没有可支持的数据库列表中。并且提示:
Not supported data type: jdbcUrl=jdbc:postgresql://..../...
请问,我可能在那个步骤出错?
local.Dokcerfile
文件中的命令ADD phantomjs /opt/phantomjs-2.1.1
会以/opt/phantomjs-2.1.1
作为文件名将phantomjs
添加到镜像中,所以构建过程中会提示chmod: /opt/phantomjs-2.1.1/phantomjs: Not a directory
错误,因为在目录/opt/phantomjs-2.1.1
中并不存在文件phantomjs
。
添加文件分隔符/
后可以跑通。 ADD phantomjs /opt/phantomjs-2.1.1
=> ADD phantomjs /opt/phantomjs-2.1.1/
08:42.547 [background-preinit] DEBUG org.hibernate.validator.internal.engine.resolver.TraversableResolvers - Found javax.persistence.Persistence on classpath containing 'getPersistenceUtil'. Assuming JPA 2 environment. Trying to instantiate JPA aware TraversableResolver
15:08:42.547 [background-preinit] DEBUG org.hibernate.validator.internal.engine.resolver.TraversableResolvers - Instantiated JPA aware TraversableResolver of type org.hibernate.validator.internal.engine.resolver.JPATraversableResolver.
15:08:42.547 [background-preinit] DEBUG org.hibernate.validator.internal.xml.config.ValidationXmlParser - Trying to load META-INF/validation.xml for XML based Validator configuration.
15:08:42.547 [background-preinit] DEBUG org.hibernate.validator.internal.xml.config.ResourceLoaderHelper - Trying to load META-INF/validation.xml via TCCL
15:08:42.562 [background-preinit] DEBUG org.hibernate.validator.internal.xml.config.ResourceLoaderHelper - Trying to load META-INF/validation.xml via Hibernate Validator's class loader
15:08:42.562 [background-preinit] DEBUG org.hibernate.validator.internal.xml.config.ValidationXmlParser - No META-INF/validation.xml found. Using annotation based configuration only.
15:08:42.875 [background-preinit] DEBUG org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator - Loaded expression factory via original TCCL
15:08:42.890 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator as ValidatorFactory-scoped message interpolator.
15:08:42.890 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.internal.engine.resolver.JPATraversableResolver as ValidatorFactory-scoped traversable resolver.
15:08:42.890 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.internal.util.ExecutableParameterNameProvider as ValidatorFactory-scoped parameter name provider.
15:08:42.890 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.internal.engine.DefaultClockProvider as ValidatorFactory-scoped clock provider.
15:08:42.890 [background-preinit] DEBUG org.hibernate.validator.internal.engine.ValidatorFactoryImpl - HV000234: Using org.hibernate.validator.internal.engine.scripting.DefaultScriptEvaluatorFactory as ValidatorFactory-scoped script evaluator factory.
目前主版本已经更新,修改docker配置和发布最新镜像文件到最新版本。
unzip: cannot find zipfile directory in one of phantomjs-2.1.1-linux-x86_64.tar.bz2 or
phantomjs-2.1.1-linux-x86_64.tar.bz2.zip, and cannot find phantomjs-2.1.1-linux-x86_64.tar.bz2.ZIP, period.
The command '/bin/sh -c mkdir -p /opt/phantomjs-2.1.1 && wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2 && unzip phantomjs-2.1.1-linux-x86_64.tar.bz2 && rm -rf phantomjs-2.1.1-linux-x86_64.tar.bz2 && mv phantomjs-2.1.1-linux-x86_64/bin/phantomjs /opt/phantomjs-2.1.1/phantomjs && rm -rf phantomjs-2.1.1-linux-x86_64' returned a non-zero code: 9
貌似解压 tar.bz2 不能用 unzip
What is the password of the root user of davinci-docker?so that,I can I can manage the the operating system and MySQL。
我为Davinci做了docker镜像,zhangsean/davinci,每天监控davinci版本发布自动构建镜像,有基于alpine和openj9两个jre的版本,一个镜像小,一个内存占用小,大家可以试试。
启动命令:
docker run -p 58081:8080 -e SPRING_DATASOURCE_URL="jdbc:mysql://:3306/davinci0.3?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true"
-e SPRING_DATASOURCE_USERNAME="root" -e SPRING_DATASOURCE_PASSWORD="root"
-e SPRING_MAIL_HOST="smtp.qq.com" -e SPRING_MAIL_PORT="465" -e SPRING_MAIL_PROPERTIES_MAIL_SMTP_SSL_ENABLE="true"
-e SPRING_MAIL_USERNAME="[email protected]" -e SPRING_MAIL_PASSWORD=""
-e SPRING_MAIL_NICKNAME="davinci_sys"
edp963/davinci:v0.3.0-beta.9
报错信息:
docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: "./bin/start-server.sh": stat ./bin/start-server.sh: no such file or directory": unknown.
ERRO[0000] error waiting for container: context canceled
您将要访问:
http://0.0.0.0:8080///?token=DA1xxxxxxx ip 端口在哪里改?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.