Hello - thanks for making this project. Like the simplicity and it mostly worked as advertised. Here are some gotchas I encountered from first run.
I think it'd make sense to add some notes to the documentation so people are more likely to have a good first-run experience:
Server needs to be ubuntu
sidekick init disables root ssh. You must use ssh sidekick@ henceforth.
container should expose port for the sake of health checks since health checks happen from host machine (outside of docker network)
server should have an /up endpoint also for health checks.
For zero-downtime deploys a few issues:
The HEALTHCHECK CMD from this example dockerfile caused several seconds of downtime during deploy.
After removing that HEALTHCHECK CMD... there would still be a few requests which timed out / didn't get a response during a deploy. I suspect this has to do with how nodes are added / removed from Traefik. This is probably why Kamal wrote a custom kamal-proxy... and I wonder if in the long run that might be a good option as it looks pretty nice.
Hello - thanks for making this project. Like the simplicity and it mostly worked as advertised. Here are some gotchas I encountered from first run.
I think it'd make sense to add some notes to the documentation so people are more likely to have a good first-run experience:
sidekick init
disables root ssh. You must usessh sidekick@
henceforth./up
endpoint also for health checks.For zero-downtime deploys a few issues:
HEALTHCHECK CMD
from this example dockerfile caused several seconds of downtime during deploy.HEALTHCHECK CMD
... there would still be a few requests which timed out / didn't get a response during a deploy. I suspect this has to do with how nodes are added / removed from Traefik. This is probably why Kamal wrote a custom kamal-proxy... and I wonder if in the long run that might be a good option as it looks pretty nice.