Hi Pierre Thank you for the quick and comprehensive reply. I deducted the second solution a couple of hours ago, but it is important for me that my insights are convergent with your, professional, analysis. Thanks a lot. Regards Tomasz
niedz., 25 gru 2016 o 22:27 użytkownik Pierre Tardy <tar...@gmail.com> napisał: > Hi thomas, > > Buildbot bootstrap is based on Twisted's ".tac" files, which are expected > to be started using twistd -y buildbot.tac. > The "buildbot start" script is actually just a convenience wrapper around > twistd. It actually just run twistd, and then watches for the logs to > confirm buildbot successfully started. There is no value added beyond this > log watching, so it is not strictly mandatory to start buildbot with > buildbot start. > You can just start it with twistd -y buildbot.tac. > > As you pointed up the official docker image is starting buildbot with > twistd -ny buildbot.tac > If you look at the help of twistd, -y means the Twisted daemon will run a > .tac file, and the -n means it wont daemonize. > This is because docker is doing process watching by itself, and do not > want its entrypoint to daemonize. > > The buildbot start command also has a --no-daemon option, which really > only is 'exec'ing to twistd -ny. > So for your dockerfile, you can as well us twistd -ny or buildbot start > --no-daemon, this will work the same. > > Another Docker specific is that the buildbot.tac is different. It > configured the twistd logs to output to stdout instead of outputing to > twisted.log. > This is because docker design expects logs to be in stdout so that you can > configure any fancy cloud log forwarder independently from the > application's tech. > > Regards > Pierre > > Le dim. 25 déc. 2016 à 14:32, Tomasz Urbański <utom...@gmail.com> a > écrit : > > Hi, > I'm trying to compose the simplest possible docker master image that runs > buildbot start in ENTRYPOINT/CMD. > I've tried to use a lot of combinations of 'dumb-init', 'gosu' and 'exec', > but with no success. > The situation is as follows: > 1) When I try to run deamonized buildroot with the command 'docker run -d > -v $local/vol/bldbot/master:/var/lib/buildbot buildbot-master-test ', the > container starts successfully, but is is terminated abruptly. The log looks > as follows: > > [timestamp] [-] Log opened. > [timestamp] [-] twistd 16.0.0 (/usr/bin/python 2.7.12) starting up. > [timestamp] [-] reactor class: twisted.internet.epollreactor.EPollReactor. > [timestamp] [-] Starting BuildMaster -- buildbot.version: 0.9.2 > [timestamp] [-] Loading configuration from '/var/lib/buildbot/master.cfg' > [timestamp] [-] Setting up database with URL 'sqlite:/state.sqlite' > [timestamp] [-] setting database journal mode to 'wal' > [timestamp] [-] doing housekeeping for master 1 > c8aa8b0d5ca3:/var/lib/buildbot > [timestamp] [-] adding 1 new changesources, removing 0 > [timestamp] [-] adding 1 new builders, removing 0 > [timestamp] [-] adding 2 new schedulers, removing 0 > [timestamp] [-] No web server configured on this master > [timestamp] [-] adding 1 new workers, removing 0 > [timestamp] [-] PBServerFactory starting on 9989 > [timestamp] [-] Starting factory <twisted.spread.pb.PBServerFactory > instance at 0x7f2cca079b00> > [timestamp] [-] BuildMaster is running > > 2) When I run the container in the interactive mode with the command > 'docker run --rm -it -v $local/vol/bldbot/master:/var/lib/buildbot > buildbot-master-test /bin/sh' and next I run the command 'buildbot start' > all works like charm. > > I've already studied the content of official buildbot master docker image, > tj. 'buildbot/buildbot-master'. I see that authors decided to use the > command 'exec twistd -ny $B/buildbot.tac' in start_buildbot.sh. > > So the question is, how to compose the ENTRYPOINT/CMD instructions in the > Dockerfile that runs simply buildbot start. > > See also discussion and further details on Stack Overflow > <http://stackoverflow.com/questions/41299608/daemonized-buildbot-start> > > _______________________________________________ > users mailing list > users@buildbot.net > https://lists.buildbot.net/mailman/listinfo/users > >
_______________________________________________ users mailing list users@buildbot.net https://lists.buildbot.net/mailman/listinfo/users