-
Notifications
You must be signed in to change notification settings - Fork 67
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
Support other architectures #27
Comments
I would like support for PPC64LE as well |
I would suggest to use Debian because it has more prebuilts which makes building easier. |
I just could successfully build the Searx Docker Image on arm without any modifications:
So I think we just need to update the CI Docker builds to also build it for arm (or others) and publish it to Docker-Hub. |
Reading https://www.docker.com/blog/multi-arch-build-what-about-travis/ I have this script for travis:
The |
I just use the following setup for buildx in travis: .travis.yaml
|
Thank you for the configuration. I have create dalf/searx@docker-buildx branch: Output here: Unfortunately, the build takes forever and timeout. Most probably pyopenssl can be removed from the dependencies (since searx/searx#2199 ), but anyway even lxml is a problem (and this one is mandatory). [EDIT] There is https://docs.travis-ci.com/user/multi-cpu-architectures/ |
You probably need to find a pypi repository which has this as a prebuilt. Alternatively you would need to setup a pipeline where you prebuilt this package and upload it to a pypi server. I am doing the same for arm for this Image https://github.com/SuperSandro2000/docker-images/blob/master/reddiscord/Dockerfile#L45 https://github.com/SuperSandro2000/docker-images/blob/master/reddiscord/files/pip.conf. I am using this repo to built the wheels and this pypiserver to host them. This would probably take quite some time if there is nothing like https://www.piwheels.org/ for ppc64le. If you need help with any of the above feel free to reach out to me. |
I'm not as deep in CI/CD workflows, as you guys seem to be :) However, I could successfully build the docker-images for armv6, armv7, arm64 (ppc is building at the moment), using the github workflow integrations: https://github.com/avpnusr/searx/blob/master/.github/workflows/update-build.yml As far as i can see from your links above, Travis does not support armv6 armv7, but only arm64 and ppc64. The image from github workflow works, as I run it on a RaspberryPi 3B+ . Perhaps this helps in any way? |
Yes with docker buildx you can build for a lot of architectures. Searx could switch to it using Github actions. |
It is possible to speed lxml install / compilation: Moreover, there is no need to install |
Sorry, took me a while, to get back to this :) As far as I can see, you mean the missing build variables in the dockerx command. Regarding the installation of the lxml via pip - do you know, where i have to comment the lxml build out? |
Fixed in https://github.com/searxng/searxng-docker if anyone is interested. |
EDIT: Fixed in https://github.com/searxng/searxng-docker if anyone is interested.
If #26 get merged then it's one step towards supporting other architectures because the Docker image
lucaslorentz/caddy-docker-proxy
supports ARM devices.filtron and morty can be compiled in ARM too because Golang support it. And searx and searx-checker are using python so they can be switched to use the alpine ARM base image.
The text was updated successfully, but these errors were encountered: