我在Docker中有一个Jenkins容器。
成功构建某些东西后,我想将其部署到glassfish docker容器中。
https://docs.oracle.com/cd/E19798-01/821-1757/ghgmi/index.html
在给定的网站上提及,将 war 复制到autodeploy文件夹中将自动部署它。但是,如何连接到玻璃鱼容器?
https://github.com/jenkinsci/postbuildscript-plugin
使用此插件,您可以在构建后执行脚本。
最佳答案
我使用Jenkins Pipeline作业来控制我的容器。
在这种情况下,您可以在管道脚本中使用以下内容:
node ("YOUR_SLAVE_MACHINE_NAME") {
stage('Build Image'){
app = docker.build('NAME_OF_IMAGE:latest', '/jenkins_home/workspace/NAME_OF_THIS_JOB')
}
stage('Run container') {
try {
app.inside(' -p 8080:8080 ') { // or any properties you want to deliver
sh '/usr/local/glassfish4/bin/asadmin start-domain'
sh '/usr/local/glassfish4/bin/asadmin -u admin deploy /YOUR_APP.war'
sh '/usr/local/glassfish4/bin/asadmin stop-domain'
sh '/usr/local/glassfish4/bin/asadmin start-domain --verbose'
sh 'sleep 10000d'
}
}
catch (exc) {
echo 'Application container is down. ' + exc
}
}
}
关于docker - 将生成的WAR部署到glassfish,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49058048/