pitkley/dfw

Potentially use bollard instead of shiplift

Closed this issue · 3 comments

bollard seems to be a modern, maybe more up-to-date alternative to shiplift. Specifically it is updated to the latest tokio/futures/hyper releases, which would pave the way for potentially using async/await in the future (although we have no direct benefit from this).

One potential problem: currently bollard is pinned to Docker API version 1.40, which has only been available since Docker version 19.03.0. We need to make sure that we don't break older Docker versions.

Bollard also has version negotiation, like the go client https://docs.rs/bollard/0.6.1/bollard/struct.Docker.html#method.negotiate_version

Let me know you if have any questions or get blocked on any features you may need..

@fussybeaver thank you so much for reaching out! That is very interesting and probably covers what I need perfectly.

I'm not sure when I'll get around to replacing shiplift (and I still haven't ultimately decided if I will, since I'm not experiencing any issues with it), but if I reach any blockers I will get back to you! 👍