我在码头工具中有一个Jenkins容器。
当我成功构建某些东西时,我想将它部署到glassfish docker容器中。
https://docs.oracle.com/cd/E19798-01/821-1757/ghgmi/index.html
在给定的网站上提到,在 autodeploy 文件夹中复制战争将自动部署它。但是我如何连接到glassfish容器?
https://github.com/jenkinsci/postbuildscript-plugin
使用此插件,您可以在构建后执行脚本。
答案 0 :(得分:1)
我使用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
}
}
}