我有一个spring boot应用程序,它有很多flyway脚本。此脚本将在启动应用程序启动后自动运行。他们在没有Docker的情况下运行正常。当我把这个应用程序放到docker容器application.yml中时
server:
port:8080
context-path:/tms-server
http:
mappers:
jsonPrettyPrint:true
security:
basic:
enabled:false
cors:
enabled:true
flyway:
enabled:true
clean-on-validation-error:false
validate-on-migrate:false
url:jdbc:mysql://mysql-docker-container:3306/synfioo_poc?useSSL=false
user:app_user
password:test123
schemas:synfioo_poc
locations:db/migration/mysql
spring:
profiles:
active:mysql
flyway Sql文件位于类路径:db/migration/mysql
中
db/migration/mysql/v0001__r001_create_schema.sql:
CREATE TABLE synfioo_poc.Binary_Object (
id BIGINT NOT NULL AUTO_INCREMENT,
modification_counter INTEGER NOT NULL,
data BLOB(2147483647),
size BIGINT NOT NULL,
mime_Type VARCHAR(255),
PRIMARY KEY (ID)
)
我的应用程序-mysql.yml看起来像
spring:
jpa:
database:mysql
database-platform:org.hibernate.dialect.MySQL5Dialect
datasource:
url:jdbc:mysql://mysql-docker-container:3306/synfioo_poc?useSSL=false
username:app_user
password:test123
driver-class-name:com.mysql.jdbc.Driver
在docker构建之后,我将我的spring boot与Mysql Db链接如下
假设我已经正确地创建了Mysql映像,并且它能够运行,从Mysql客户端创建表,但是flyway脚本没有从Java程序运行,也正确地创建了docker文件
docker run -t --name synfioo-poc-container --link mysql-docker-container:mysql -p 8080:8080 docker-synfioo-core:latest
例外情况:
2018-05-31 13:28:45.746 INFO 1 --- [ main] o.f.core.internal.util.VersionPrinter : Flyway 3.2.1 by Boxfuse
2018-05-31 13:28:46.783 INFO 1 --- [ main] o.f.c.i.dbsupport.DbSupportFactory : Database: jdbc:h2:mem:testdb (H2 1.4)
2018-05-31 13:28:47.457 INFO 1 --- [ main] o.f.core.internal.command.DbValidate : Validated 18 migrations (execution time 00:00.506s)
2018-05-31 13:28:47.502 INFO 1 --- [ main] o.f.c.i.metadatatable.MetaDataTableImpl : Creating Metadata table: "PUBLIC"."schema_version"
2018-05-31 13:28:47.609 INFO 1 --- [ main] o.f.core.internal.command.DbMigrate : Current version of schema "PUBLIC": << Empty Schema >>
2018-05-31 13:28:47.615 INFO 1 --- [ main] o.f.core.internal.command.DbMigrate : Migrating schema "PUBLIC" to version 0001 - R001 Create schema
2018-05-31 13:28:47.638 ERROR 1 --- [ main] o.f.core.internal.command.DbMigrate : Migration of schema "PUBLIC" to version 0001 failed! Please restore back
ups and roll back database and code!
2018-05-31 13:28:47.670 WARN 1 --- [ main] ationConfigEmbeddedWebApplicationContext : Exception encountered during context initialization - cancelling refresh
attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'beansBatchConfig': Unsatisfied dependency expressed through me
thod 'setTransactionManager' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager'
defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]: Initialization of bean failed; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoc
onfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.dbsupport.FlywaySqlScriptException:
Migration V0001__R001_Create_schema.sql failed
----------------------------------------------
SQL State : 90079
Error Code : 90079
Message : Schema "SYNFIOO_POC" not found; SQL statement:
CREATE TABLE synfioo_poc.Binary_Object (
id BIGINT NOT NULL AUTO_INCREMENT,
modification_counter INTEGER NOT NULL,
data BLOB(2147483647),
size BIGINT NOT NULL,
mime_Type VARCHAR(255),
PRIMARY KEY (ID)
) [90079-193]
Location : db/migration/mysql/V0001__R001_Create_schema.sql (/file:/synfioo-core-0.0.1-SNAPSHOT.jar!/db/migration/mysql/V0001__R001_Create_schema.sq
Line : 8
Statement : CREATE TABLE synfioo_poc.Binary_Object (
id BIGINT NOT NULL AUTO_INCREMENT,
modification_counter INTEGER NOT NULL,
data BLOB(2147483647),
size BIGINT NOT NULL,
mime_Type VARCHAR(255),
PRIMARY KEY (ID)
)
有人能在这个问题上帮忙吗。
Message : Schema "SYNFIOO_POC" not found; SQL statement:
CREATE TABLE synfioo_poc.Binary_Object (
...
v0001__r001_create_schema.sql
中引用的synfio_poc
架构/数据库似乎不存在于mysql-docker-container
实例中。
尝试将createdatabaseifNotexist=true
添加到mysql的jdbc url以自动创建它,如果需要:
url:jdbc:mysql://mysql-docker-container:3306/synfioo_poc?useSSL=false&createDatabaseIfNotExist=true
我有一个react-app,它简单地显示hello-world消息,但我喜欢运行应用程序通过docker-container,但有这个问题。在此消息之后,进程停止,没有运行应用程序。 我不能理解我应该做什么,因为我有一个很小的应用程序,在Dockerfile中有基本代码 我需要安装webpack-dev-server吗,我尝试了,但得到了版本错误,如“手动添加服务器”的版本比已经安装的服务器低。所
问题内容: 我在让我的MySQL容器运行来自Docker Compose的一些初始化脚本(创建一些数据库)时遇到问题。根据Docker Hub上的文档,我将文件挂载在其中,但无济于事。 我的撰写文件如下: 的内容只有1个文件: 一旦启动,MySQL正在运行,但未创建数据库。服务容器还成功链接到MySQL容器。扑向MySQL容器;初始化脚本已成功安装在正确的位置。 有人可以在这里看到一些明显的问题吗
在我的项目中,当我运行后端时,使用Quarkus、Angular和PostgreSQL DB 这是我放在后端文件夹(Quarkus)中的“docker-compose.yml”文件: 但是当我构建一个Quarkus泊坞窗映像并尝试在泊坞窗容器中运行它时,它失败了!知道角度泊坞站容器运行良好,数据库也是如此。以下是我在运行容器后获得的错误日志: 使用 /opt/jboss/容器/java/运行/运行
问题内容: 我创建了一个Dockerfile在Docker内部运行Docker: 启动容器并运行docker ps后,我得到:“无法通过unix:///var/run/docker.sock连接到Docker守护程序。Docker守护程序正在运行吗?” 我在容器内执行了命令dockerd: 错误启动守护程序:错误初始化网络控制器:错误获取控制器实例:无法创建NAT链DOCKER:iptables失
我是新来的docker和有一个简单的DW(dropwizard)应用程序连接到elasticsearch,其中已经运行在docker使用docker-compose.yml,其中有以下内容。 弹性搜索的Docker-compose.yml 注意:我将8200和8300公开为主机(本地mac系统)上的ES端口 现在,当我在本地主机上运行连接到8200中ES的DW应用程序时,一切都正常了,但现在我正在
其基本思想是运行带有音频和ui的应用程序(vlc、firefox、skype…) 我在使用pulseaudio搜索docker容器,但我找到的所有容器都在TCP上使用pulseaudio流。(应用程序的安全沙箱) https://gist.github.com/hybris42/ce429de428e5af3a344a https://github.com/jlund/docker-chrome-