-
Notifications
You must be signed in to change notification settings - Fork 139
Add Portrainer support and multi arch build pipeline #49
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
base: master
Are you sure you want to change the base?
Conversation
* Create a build pipeline for making multi arch manifest including AMD64, ARM32V7, ARM64V8. * Reorganized the project to better use Dockerfile COPY. * With these changes the project can be deployed in Portrainer even under arm linux. * For local build using docker-compose and docker-compose.override * Added the ability to build multiple arch and python version number in Dockerfile * Fixed an issue where no entrypoint.sh found while deploying Portrainer * Be sure that entrypoint.sh has executable permission
custom.env file comment out example
…before build both host machine and target machine.
…ml does that anyway
Thank you will dig into this and get back to you |
Gooday! Take your time. After looking back, its not my cleanest PR but the gist of it should give all the major points what kinds of improvements can be made. If you have any questions feel free to ask and challenge me. |
Are you available on Discord to chat about the PR? |
hi, yes sure. |
Change speedtest container restart policy to failure. if the SPEEDTEST_ENABLED is disabled then the container just spins up and exits without restart!
Readme: update docker compose with speedtest: restart: on-failure
This PR adresses a lot of things that I would change in a similar way after setting up netprobe. It absolutely works as it is, but its far from a good experiance. Please take another look at this PR and concider merging it. Last but not least, nice project 🤩 |
Hello, good day. I just wanted to let you know that, i've managed to make the project deployable in
Portrainer
underarm32v7
arch.I had to do some major reorganizing changes in order to make this happen. I think in the long term the project certainly benefits from it.
You may accept or deny this PR. My only goal was to make the project working on my small arm based odroid xu4, which runs 24/7 runs on very low power.
However i highly suggest to check out my changes in order to understand what kind of changes needed to be made for
Portrainer Stack
support.I wish for the best moving forward with the project, i really like the idea not to mention its quite handy when your ISP doing questionable things.
Changes:
build_publish.sh
) for making multi arch manifest includingAMD64
,ARM32V7
,ARM64V8
result can be seen here.Dockerfile
COPY
. Moved all of the source does under the/src
folder.docker-compose.yml
no longer mounts the source code into the container directly but rather creates aDockerfile COPY
of the/src
folder.docker-compose.yml
no longer mounts single files, but rather mounts the parent folder.README.md
file..dockerignore
to the project specific topython
projects.Dockerfile
theMAJOR.MINOR
python version can be set via$PYTHON_VERSION
more info inbuild.env
Portrainer
even under armlinux
.docker-compose.yml
anddocker-compose.override.yml
.Dockerfile
.entrypoint.sh
found while deployingPortrainer
, used wrong image file on linux.entrypoint.sh
has executable permission.Config_Netprobe.speedtest_enabled
is considered innetprobe_speedtest.py
/logs
folder - volume can be mounted so the logs are persisted on the host machine.Config_Netprobe.speedtest_enabled
is set toFalse
the speedtest container spins up and exists immediately.readme.md
for how to build and publish docker image to docker hub.Tested my changes:
docker-compose -f docker-compose.yml -f docker-compose.override.yml up --build
this should give more flexibility what kind of customization each consumer want to implement.arm32v7
- deploying the app usingPortrainer
, more info in theREADME.md
Recommended subject around the topic: