Hello Carlos, Thanks for your reply and explanation.
My situation is that one of container *images* *doesn't exist* in the *beginning* of pod creation. And then that container image will be established in the "*build stage*" of pipeline execution. So that is why I cannot let this containerTemplate *claimed in the beginning* of *Pod Definition*. Best regards, Hong 2017-08-16 17:01 GMT+02:00 Carlos Sanchez <[email protected]>: > > > On Wed, Aug 16, 2017 at 1:55 PM, YAN-HONG WANG <[email protected]> > wrote: > >> Hello Carlos, >> >> Now in my Jenkinsfile.groovy I create a *slave container* in *other pod*. >> I use "*load*" this function to implement. >> >> But, I found out that *pod *will be *destroyed automatically* when that >> *slave >> container* was executed. >> That slave container is a PostgreSQL daemon. That needs to be held for >> waiting other container binding. >> And then unfortunately that *slave container was destroyed by destroyed >> pod.* >> >> Is there any *syntax *or *podTemplate argument* can avoid pod destroyed >> automatically? >> > > You can create multiple containers as part of a pod, then can use them > until podTemplate is closed, when the pod is destroyed > > >> >> Thanks very much. >> >> Best regards, >> Hong >> >> >> Am Montag, 14. August 2017 21:58:46 UTC+2 schrieb YAN-HONG WANG: >>> >>> Hello Carlos, >>> >>> Thanks for your hint. >>> I will try to create new container in other new pod. >>> >>> Hong >>> >>> Am Montag, 14. August 2017 21:20:03 UTC+2 schrieb Carlos Sanchez: >>>> >>>> You can not add containers to a pod after the pod is created, that >>>> doesn't work in kubernetes nor docker swarm >>>> >>>> On Mon, Aug 14, 2017 at 8:44 PM, YAN-HONG WANG <[email protected]> >>>> wrote: >>>> >>>>> Hello Carlos, >>>>> >>>>> If I use the container created function like below: >>>>> >>>>> def dbImage = *docker.image*( "myregistry:5000/imagename:1.0.0.1" ) >>>>> def c = *dbImage.run*("--network jenkins-network --name mycontainer") >>>>> >>>>> But, this container seems will be created *in host* side, *not in* >>>>> Kubernetes side, right? >>>>> >>>>> So this container even was created ... but it could *not* communicate >>>>> with *other container* ... >>>>> >>>>> Best regards, >>>>> Hong >>>>> >>>>> >>>>> Am Montag, 14. August 2017 20:32:19 UTC+2 schrieb YAN-HONG WANG: >>>>>> >>>>>> Hello Carlos, >>>>>> >>>>>> Thanks for correction. >>>>>> But, if containerTemplate can't be defined outside of podTemplate. >>>>>> >>>>>> How could I *create* a container in the *execution of pipeline*? >>>>>> And that container can also *stay* in the *same* pod. >>>>>> Is there some other *syntax* or some *container creation function* >>>>>> could be applied in *node area*? >>>>>> >>>>>> Thanks very much again. >>>>>> >>>>>> Best regards, >>>>>> Hong >>>>>> >>>>>> Am Montag, 14. August 2017 09:42:11 UTC+2 schrieb Carlos Sanchez: >>>>>>> >>>>>>> you can't define containers outside podTemplate >>>>>>> >>>>>>> On Fri, Aug 11, 2017 at 11:55 PM, YAN-HONG WANG <[email protected] >>>>>>> > wrote: >>>>>>> >>>>>>>> Hello Carlos, >>>>>>>> >>>>>>>> I tried it already with all *plain hard code*. And insert in the >>>>>>>> execution of pipeline. >>>>>>>> >>>>>>>> Something like this below: >>>>>>>> >>>>>>>> podTemplate( >>>>>>>> >>>>>>>> label: "pod", >>>>>>>> >>>>>>>> containers: [ >>>>>>>> containerTemplate( >>>>>>>> name: "*worker*", >>>>>>>> image: "myregistry:5000/jenkins-worker:latest", >>>>>>>> envVars:[ >>>>>>>> containerEnvVar( key: "PGUSER", value: "pguser" ), >>>>>>>> containerEnvVar( key: "PGPASSWORD", value: "pgpassword" ) >>>>>>>> ], >>>>>>>> alwaysPullImage: true, >>>>>>>> ttyEnabled: true, >>>>>>>> command: "cat" >>>>>>>> ) >>>>>>>> ] >>>>>>>> ) >>>>>>>> { >>>>>>>> node( "pod" ) { >>>>>>>> >>>>>>>> container( "*worker*" ) { >>>>>>>> >>>>>>>> stage( "DB Tests" ) { >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> * containers: [ containerTemplate( name: >>>>>>>> "db", image: "myregistry:5000/postgresql-server:1.0", >>>>>>>> alwaysPullImage: true, ttyEnabled: true ) ]* >>>>>>>> >>>>>>>> container( "*db*" ) { >>>>>>>> sh "psql --host=127.0.0.1 --dbname=$project --echo-all >>>>>>>> --command='SELECT timestamp FROM info'" >>>>>>>> } >>>>>>>> } >>>>>>>> } >>>>>>>> } >>>>>>>> } >>>>>>>> >>>>>>>> And I got the error message result below: >>>>>>>> >>>>>>>> *Waiting for container container [db] of pod [slave-87s57-3zc4x] to >>>>>>>> become ready.* >>>>>>>> >>>>>>>> >>>>>>>> Do I make something wrong in script? >>>>>>>> Or that need to be implemented by other form or syntax? >>>>>>>> >>>>>>>> Thanks very much. >>>>>>>> >>>>>>>> BR >>>>>>>> Hong >>>>>>>> >>>>>>>> Am Freitag, 11. August 2017 14:57:50 UTC+2 schrieb Carlos Sanchez: >>>>>>>>> >>>>>>>>> Have you tried? >>>>>>>>> >>>>>>>>> On Fri, Aug 11, 2017, 12:14 WANG, YAN-HONG <[email protected]> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Hello all, >>>>>>>>>> >>>>>>>>>> I saw the tutorial with jenkins-kubernetes-plugin. >>>>>>>>>> https://github.com/jenkinsci/kubernetes-plugin >>>>>>>>>> >>>>>>>>>> The examples of containerTemplate are all created in the *beginning >>>>>>>>>> *of groovy file. >>>>>>>>>> And the *image name with version number *are *fixed*, too. >>>>>>>>>> Example like this below. >>>>>>>>>> >>>>>>>>>> containerTemplate( >>>>>>>>>> name: 'maven', >>>>>>>>>> image: 'maven:3.3.9-jdk-8-alpine', >>>>>>>>>> ttyEnabled: true, >>>>>>>>>> command: 'cat' >>>>>>>>>> ) >>>>>>>>>> >>>>>>>>>> Is that possible or some *syntax *can implement container >>>>>>>>>> created during *execution of pipeline*? >>>>>>>>>> So this container could also run in *the same Pod*. >>>>>>>>>> Maybe the syntax looks like below. >>>>>>>>>> >>>>>>>>>> //////////////////////////////////////////////////////////// >>>>>>>>>> ////////// >>>>>>>>>> >>>>>>>>>> ...... >>>>>>>>>> ...... >>>>>>>>>> >>>>>>>>>> containerTemplate( >>>>>>>>>> name: 'maven', >>>>>>>>>> image: 'myregistry:5000/*$ImageName*:*$VersionNumber*', >>>>>>>>>> ttyEnabled: true, >>>>>>>>>> command: 'cat' >>>>>>>>>> ) >>>>>>>>>> >>>>>>>>>> ...... >>>>>>>>>> ...... >>>>>>>>>> >>>>>>>>>> //////////////////////////////////////////////////////////// >>>>>>>>>> ////////// >>>>>>>>>> >>>>>>>>>> Thanks very much. >>>>>>>>>> >>>>>>>>>> BR >>>>>>>>>> Hong >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> You received this message because you are subscribed to the >>>>>>>>>> Google Groups "Jenkins Users" group. >>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>>>> send an email to [email protected]. >>>>>>>>>> To view this discussion on the web visit >>>>>>>>>> https://groups.google.com/d/msgid/jenkinsci-users/CADLWyO3ka >>>>>>>>>> tWvkMezE80XJ8u%3DFna_QW5%2BjWT12PYa%3Dar_BUgAxQ%40mail.gmail.com >>>>>>>>>> <https://groups.google.com/d/msgid/jenkinsci-users/CADLWyO3katWvkMezE80XJ8u%3DFna_QW5%2BjWT12PYa%3Dar_BUgAxQ%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>>>>>>> . >>>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>>> >>>>>>>>> -- >>>>>>>> You received this message because you are subscribed to the Google >>>>>>>> Groups "Jenkins Users" group. >>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>> send an email to [email protected]. >>>>>>>> To view this discussion on the web visit >>>>>>>> https://groups.google.com/d/msgid/jenkinsci-users/6d679b02-1 >>>>>>>> 099-45a8-a35b-c89e25fae0a5%40googlegroups.com >>>>>>>> <https://groups.google.com/d/msgid/jenkinsci-users/6d679b02-1099-45a8-a35b-c89e25fae0a5%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>>>> . >>>>>>>> >>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>> >>>>>>> >>>>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "Jenkins Users" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/jenkinsci-users/800b3663-e >>>>> c78-4223-8718-2ed7ba781256%40googlegroups.com >>>>> <https://groups.google.com/d/msgid/jenkinsci-users/800b3663-ec78-4223-8718-2ed7ba781256%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>>> For more options, visit https://groups.google.com/d/optout. >>>>> >>>> >>>> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit https://groups.google.com/d/ms >> gid/jenkinsci-users/afbe15cf-35c9-4b99-a795-a73961c0f910%40g >> ooglegroups.com >> <https://groups.google.com/d/msgid/jenkinsci-users/afbe15cf-35c9-4b99-a795-a73961c0f910%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> For more options, visit https://groups.google.com/d/optout. >> > > -- > You received this message because you are subscribed to a topic in the > Google Groups "Jenkins Users" group. > To unsubscribe from this topic, visit https://groups.google.com/d/to > pic/jenkinsci-users/m5ZXydq8gtc/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > To view this discussion on the web visit https://groups.google.com/d/ms > gid/jenkinsci-users/CALHFn6NsOu2iE2UBNdhDFg90A4q5dszG_ZJzfaM > D-nT0-Yr%3DQw%40mail.gmail.com > <https://groups.google.com/d/msgid/jenkinsci-users/CALHFn6NsOu2iE2UBNdhDFg90A4q5dszG_ZJzfaMD-nT0-Yr%3DQw%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/CADLWyO2R48h977p%2BD94-WTQgz8o0Zz9Q%3D1R5CWeG4ocYKg%3DPmQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
