-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build and run in Docker #424
Conversation
Thanks for taking this over. I've had some life stuff. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good as a first pass!
Thank you for the review 😄 |
d09fb18
to
eda9ead
Compare
I pushed Github Actions workflow for pushing to Docker Hub. Do you mind taking a look at this as well? It seems to be working 🙂 One of the test runs: https://github.com/la5nta/pat/actions/runs/6523720316/job/17714636579 |
Looks good! I see it's already published at https://hub.docker.com/r/la5nta/pat. One curious side note, your callsign/account name seems to be getting replaced in the Actions build logs, e.g. this. It doesn't seem like a problem, just weird. For my education, I see on Docker Hub there are several digests for different architectures, but it doesn't look like you're having to explicitly build them all in the build step. Do you get containers for all of the different architectures "for free?" |
Also, I just noticed you're targeting the |
Yes, I thought so too. I have no idea why it's masked 🤷
Yes! Well, almost. If you look closely in the workflow definition you'll see I've added a list of platforms. But basically that's the magic of Docker's Buildx (https://github.com/docker/setup-buildx-action) 😄 It's very neat!
Yes, you assumed correct 🙂 I figured it's ok to commit this directly to master and not tagging a new version, since it does not affect the app itself. |
Replaces draft PR #391 which is stalled. FYI @ThreeSixes.
This adds a Dockerfile for building a minimalistic Docker image with Pat. It also adds a docker-compose file as a starting point for those that wishes to experiment with this kind of setup. This is my first attempt of creating a Docker image for public release, following the best practices to the best of my knowledge.
In the future I'd like to configure a Github Actions pipeline for pushing these images to dockerhub. I'd also like add a new repo containing a Docker Compose setup including ARDOPc, Direwolf. It will probably be useful mostly for Linux users, since Docker Desktop on mac/windows does not support sound devices. But for Linux users, I think this could prove to be an easy and convenient way to deploy a robust and reproducable software suite for Winlink. I've already started experimenting with such a system on an old x86 laptop. It would be great to include VARA HF/FM also, but there are licensing issues to consider.