Gradle项目打包并Docker部署
1.父级build.gradle注:gradle-docker-plugin下载比较缓慢,可以从中央仓库下载下来之后传到本地私服buildscript {ext {springBootVersion = '2.2.1.RELEASE'}repositories {maven {url ="http://192.168.6.135:8081/nexus/content/groups/public/"
·
1.父级build.gradle
注:gradle-docker-plugin下载比较缓慢,可以从中央仓库下载下来之后传到本地私服
buildscript {
ext {
springBootVersion = '2.2.1.RELEASE'
}
repositories {
maven {
url = "http://192.168.6.135:8081/nexus/content/groups/public/"
}
}
dependencies {
classpath "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}"
classpath('com.bmuschko:gradle-docker-plugin:6.1.1')
}
}
2.需要打包的子build.gradle
apply plugin: "com.bmuschko.docker-spring-boot-application"
dependencies {
}
docker {
//如果url不指定的话
// Unix系统默认:unix:///var/run/docker.sock
//Windows系统默认:tcp://127.0.0.1:2375。
url = 'http://10.3.192.39:2375'
registryCredentials {
url = 'http://10.3.192.39:8777'
username = 'admin'
password = 'Harbor12345'
}
springBootApplication {
baseImage = '10.3.192.39:8777/hualongxin/jdk1.8:latest'//指定运行镜像
ports = [8086] //暴露的端口
images = ["10.3.192.39:8777/hualongxin/${project.group}/${project.name}:${version}"]
jvmArgs = ['-Dspring.profiles.active=$env', '-Xmx2048m', '-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8084']
}
}
3.构建镜像
运行task dockerPushImage
4. k8s指定spring profiles
deployment.yaml
kind: Deployment
apiVersion: apps/v1
metadata:
name: my-spring-boot-app
spec:
replicas: 3
selector:
matchLabels:
app: my-spring-boot-app
template:
metadata:
labels:
app: my-spring-boot-app
spec:
containers:
- name: my-spring-boot-app
image: my-spring-boot-app:1.2.3
env:
- name: SPRING_PROFILES_ACTIVE
value: prod
更多推荐
已为社区贡献3条内容
所有评论(0)