Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 17:45
    crossworth commented #405
  • Nov 13 19:09
    unstephenk labeled #405
  • Nov 13 19:09
    unstephenk labeled #405
  • Nov 13 19:09
    unstephenk labeled #405
  • Nov 13 19:09
    unstephenk opened #405
  • Nov 13 17:02
    amarCosmospace commented #399
  • Nov 13 10:17
    zoispag commented #403
  • Nov 13 10:16

    simskij on master

    Add --revive-stopped flag to st… (compare)

  • Nov 13 10:16
    simskij closed #403
  • Nov 13 10:16
    simskij commented #403
  • Nov 13 10:13
    simskij synchronize #403
  • Nov 13 10:10
    simskij commented #401
  • Nov 13 10:10

    simskij on master

    Add lifecycle hooks to document… (compare)

  • Nov 13 10:09
    simskij closed #401
  • Nov 12 07:47
    welcome[bot] commented #404
  • Nov 12 07:47
    pjknkda opened #404
  • Nov 07 10:26
    zoispag edited #403
  • Nov 07 10:15
    zoispag edited #403
  • Nov 07 09:51
    zoispag opened #403
  • Nov 07 08:37
    kevindd992002 labeled #402
Simon Aronsson
@simskij
woop woop :)
Cassock
@Cassock
@simskij i came back from lunch today to see this https://hastebin.com/inijudifih.sql :(
container was built with this command docker run -d \ --name containrrr-watchtower \ --restart=always \ -e WATCHTOWER_CLEANUP=true \ -e WATCHTOWER_INCLUDE_STOPPED=true \ -e WATCHTOWER_NOTIFICATIONS=slack \ -e WATCHTOWER_NOTIFICATION_SLACK_HOOK_URL=https://hooks.slack.com/services/blah/blah/blah\ -e WATCHTOWER_NOTIFICATION_SLACK_ICON_EMOJI=:whale: \ -v /var/run/docker.sock:/var/run/docker.sock \ containrrr/watchtower
synology host
Simon Aronsson
@simskij
hmmm
Could you try running with --debug?
we've got a whole lot of logging in IsContainerStale that we're missing out on now
that is, docker run -d \ --name containrrr-watchtower \ --restart=always \ -e WATCHTOWER_CLEANUP=true \ -e WATCHTOWER_INCLUDE_STOPPED=true \ -e WATCHTOWER_NOTIFICATIONS=slack \ -e WATCHTOWER_NOTIFICATION_SLACK_HOOK_URL=https://hooks.slack.com/services/blah/blah/blah\ -e WATCHTOWER_NOTIFICATION_SLACK_ICON_EMOJI=:whale: \ -v /var/run/docker.sock:/var/run/docker.sock \ containrrr/watchtower --debug
Cassock
@Cassock
@simskij getting this in --debug 'time="2019-10-15T23:23:38Z" level=debug msg="No authentication credentials found for monitorr/monitorr:latest"'
all images are from public repositories. never used credentials before. is this a new requirement, or is there a way to bypass?
Simon Aronsson
@simskij
nah, that's not an error. you could skip that row. it's just debug output saying that there is no credentials in config.json :)
Simon
@Freenex1911
Hey :) I didnt find anything regarding docker compose compatibility.. is it possible to use watchtower on images build with Dockerfile?
Simon Aronsson
@simskij
Hey there @Freenex1911! Docker-compose is supported. What do you mean by images built with dockerfile? If they're not available in a registry anywhere, then I'm afraid no. Otherwise; yes! :D
Simon
@Freenex1911
Well I'm using the Dockerfile to create an image from a public PHP image (to add some PHP extensions) - Docker then builds a private image but based on the public image as far as I know. So.. is watchtower able to recognize it as "private image based on public image"?
Cassock
@Cassock
@simskij i'm back :( turned on debugging to see why i'm getting so many Unable to update container errors and waited. here's what popped up in the logs just now: https://pastebin.com/srma4gE4
Cassock
@Cassock
Simon Aronsson
@simskij
Agreed. Are you on synology? Cause then it's a known issue and I think someone has written a workaround (that basically involves downgrading) in the issues
Zois Pagoulatos
@zoispag
Hey @simskij could you take a look in my latest PR, once you get time?
Simon Aronsson
@simskij
Done! 🙏🏼
I'm considering doing a minor release this weekend just to make sure nothing gets stuck in queue for release. Any thoughts from the rest of you?
Zois Pagoulatos
@zoispag
Thanks a lot! :)
I would very much appreciate a new release to include the latest work!
Simon Aronsson
@simskij
I'll see if I can squeeze it in either saturday or sunday then. :)
Zois Pagoulatos
@zoispag
Would it be possible to include fix for #367 if it’s not too much trouble?
Simon Aronsson
@simskij

I'm still trying to decide on how to approach that one. Any suggestions? The problem is, we've got no way of knowing how long the script should take.

Disabling the force kill altogether might result in a container stuck in a loop forever/until noticed by ops. Just extending it will likely result in use cases not fitting within that time frame.

Maybe a configurable script-timeout argument per monitored host would be a reasonable solution?

While a lack of that argument would result in using the overall/default timeout
Zois Pagoulatos
@zoispag
is there a way watchtower can wait for the exit code of the script?
Simon Aronsson
@simskij
Might be. But what if there is never an exit code? :D
Zois Pagoulatos
@zoispag
well, we provide the .sh scripts for the lifecycle hooks
let's make sure there is one :P
Simon Aronsson
@simskij
For example, for someone running a containerized DB who want to use the scripts to trigger a backup before deleting it.
If the database is deadlocked, out of some reason, that would result in an infinite wait :P
Zois Pagoulatos
@zoispag
true. but wouldn't you make the check, part of your script?
Simon Aronsson
@simskij
🤷🏻‍♂️
I've seen worse 😅
Zois Pagoulatos
@zoispag
haha, i may have a few situations in mind :P
what if the timeout stays as it is, but it's not respected given an certain label on a container
Simon Aronsson
@simskij
Yeah, that seems reasonable. Or a combination of my suggestion and that
Zois Pagoulatos
@zoispag
com.centurylinklabs.watchtower.lifecycle.notimeout=true
and only in this case, we check the exit code of the script
which makes me think, would it make sense to bail with the update, if the exit code is non-zero?
Simon Aronsson
@simskij
com.centurylinklabs.watchtower.lifecycle.pre-update-timeout=[<int>m|off]
Zois Pagoulatos
@zoispag
even better
Simon Aronsson
@simskij
and not providing it at all == uses the default, global timeout
Zois Pagoulatos
@zoispag
yes, so no breaking change
Simon Aronsson
@simskij
:+1: i'll have a stab at it as soon as i get some free time :D hopefully tonight.
thanks for brainstorming it with me
Zois Pagoulatos
@zoispag
:+1:
Zois Pagoulatos
@zoispag
Food for thought: Since there is a risk the pre-update script never finishes, "off" will make it hang forever, and a large timeout will make force the script to die and the container to restart. Is there is valid use case, where you want to bail the update if it reaches the timeout? Just thinking out loud :)
Simon Aronsson
@simskij
Idk to be totally honest. Might be that I'm overthinking it. I'm usually not a big fan of things that wait ad inifinitum. 😅