Postgresql Gradle Docker任务
对于我的本地开发任务 1.我想确保DB在docker容器中运行,在本例中,docker容器是Postgres,我在build.gradle文件中定义了一个bootRun任务Postgresql Gradle Docker任务,postgresql,docker,gradle,Postgresql,Docker,Gradle,对于我的本地开发任务 1.我想确保DB在docker容器中运行,在本例中,docker容器是Postgres,我在build.gradle文件中定义了一个bootRun任务 bootRun{ jvmArgs = [ "-Ddb.host=jdbc:postgresql://localhost:5432/postgres", "-Ddb.username=postgres", "-Ddb.password=apgdb" ] } do
bootRun{
jvmArgs = [
"-Ddb.host=jdbc:postgresql://localhost:5432/postgres",
"-Ddb.username=postgres",
"-Ddb.password=apgdb"
]
}
docker安装在我的机器上我只是想确保我不必手动从终端启动postgres映像,然后进行引导运行,
我们是否可以创建一个gradle任务,确保每次退出bootRun时重新启动postgres,并在每次旋转应用程序时启动它。我使用来完成此类任务。您可以创建一个定义postgres db的docker compose.yml
文件:
services:
db:
image: postgres:11
ports:
- "5432:5432"
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: apgdb
POSTGRES_DB: postgres
这将是相应的build.gradle
文件:
plugins {
id "com.avast.gradle.docker-compose" version "0.8.14"
}
dockerCompose {
database {
useComposeFiles = ['docker-compose.yml']
}
}
bootRun{
dependsOn 'databaseComposeUp'
jvmArgs = [
"-Ddb.host=jdbc:postgresql://localhost:5432/postgres",
"-Ddb.username=postgres",
"-Ddb.password=apgdb"
]
}
现在,当您运行gradlebootrun
时,它将在spring启动之前启动数据库