Docker Hub ARM image? #1717
Labels
No Label
dependencies
duplicate
help wanted
invalid
kind/bug
kind/feature
needs reproduction
question
security
wontfix
No Milestone
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: vikunja/vikunja#1717
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The container used as base,
nginx
, hasarmhf
andarm64
images, so it shoudn't be a problem to create arm images for vikunjaDockerhub ARM image?to Docker Hub ARM image?Sounds like a good idea, I'll take a look.
It seems we need an arm machine for that.
@konrad, nope with docker you can now use xbuilder to build for a deidcated plateforme and test in the virtualenv of it: https://www.docker.com/blog/multi-arch-images/
@py_cash there is debian builder in vikunja repo, you can use it in a dockerfile with a debian arm image as a base, same for njinx.
@YasserAntonio As far as I understand it, this will only work with docker desktop, which is a windows/macos only version of docker. I don't own either. Also I'd like to automate all building of docker images and this kind of prevents that. If I' just throw an arm machine in my build server it would be way easier to get it working.
You're right, since this feature is experimental it only works for Docker desktops versions.
Hello @konrad, do you think you will do it or no time for that at the moment ? I Hope we will see an arm version for this app. Thanks.
@YasserAntonio The problem is not so much about having the time to do it but more about finding an affordable arm build server, if you know of one, please let me know.
If you have one (which I suppose, since you seem to have a use case for arm docker images) you could try to just build the docker image on that - just clone the repo and do
docker build .
.About your aws problem: dl.vikunja.io is not aws capable, it is just a frontend to the minio bucket where I push releases. You should use
curl
orwget
to download binaries off it. But if you want to use that for a docker image, you're probably better off using theDockerfile
s in the git repos and build from those. The deb packages are amd64 anyway...@Konrad I already tried this. I use docker buildx to emulate the arm env but i keep having the same error. Here is the logs:
If you have any idea how to change the Dockerfile to solve this i would be glad to hear it. I already tried to reach internet within the build and it was ok. I tried to increase yarn install time out : https://github.com/yarnpkg/yarn/issues/4890 but still with same issue
That looks like an error with yarn not being reachable, not an issue with the cross compilation build. All you can do is retry in that case. (I assume you can normally reach the yarn repo without issues, no geo blocking etc)
Thanks @konrad. As you said i just had to wait for yarn to be available and i retried but still my timeout param on the frontend dockerfile was needed:
yarn install --frozen-lockfile --network-timeout 100000 && \
No trouble with the api's arm build.
Thus i builded the api and frontend arm version and just to check if it run on the arm architecture, whitout param, and it was all fine. After that i tried to reuse the docker-compose provided as an exemple (tested on man mac without issue). I had to change mariadb for mariadb's arm version which made me fall on this issue : https://github.com/linuxserver-archive/docker-mariadb-armhf/issues/7 while running the api's arm version and didn't suceed to solve it.
So i tried with mysql :
But the frontend shows a blank page and no errors in logs or docker service ps in the frontend arm version.
Here is my composefile :
I run it on a swarm and my traefik settings works well for other webapps.
UPDATE:
api's arm version outputed this log:
i dont know why the connection got refused...
connection seems unstale.
The connection getting refused is probably due to the mysql container taking a bit of time to get up and running. I see you added
restart: unless-stopped
to the container definition so it should automatically get restarted when the api container exits because of mysql not being ready to handle connections. So that should not be an issue, it just takes a bit until the api is fully operational.Do you see any issues in the browser console?
Well it might be an issue from my swarm configuration. Nevermind i just composed it outside the swarm and it goes up, at least the login page^^
@konrad could you remind me the defaul user ? I still need to configure the smtp to register but i want to test all the basic feature.
For people willing to use vikunja on a rasp :
https://hub.docker.com/repository/docker/yasserantonio/vikunja_api_armv7
https://hub.docker.com/repository/docker/yasserantonio/vikunja_frontend_armv7
@py_crash The vikunja arm version docker-compose.yml is provided in both readmes of vikunja's arm project of my docker hub repository.
@YasserAntonio There is no default user, you need to register for one. If you don't configure smtp, you won't need to confirm the email address.
In other news, I got my hands on an arm server, so there will be official arm docker images relatively soon.
Cool news !
About creating the fistr user i tried to create one and whe i click on the Register button it get a red box replacing it (screenshot for detail). And the added credentials doens't work. Did i miss something ?
api logs for user creation :
I will create a new issue if your confirm that this behaviour is not normal
That's an issue whoose root-cause lies in the web framework I'm using for the api. However, there also was a bug in the frontend which I've fixed yesterday in
5283f006f5
, please update the frontend (git pull && docker build) and try again. Registering should work with that.If you're interested about the how and why, I've already openend an issue at their repo: https://github.com/labstack/echo/issues/1594
(The error message you're seeing is a fatal, unrecoverable error and therefore the api request is not correctly handled and instead crashes the process capable of handling it)
Okey ! Thanks :D
@py_crash i updated the frontend with @konrad fixed version : https://hub.docker.com/repository/docker/yasserantonio/vikunja_frontend_armv7
Everything works fine now. Thanks @konrad for this project.
Update about automatically building arm docker images in the pipeline: I've added the arm server to the drone configuration and am using it so far, but it seems to have issues - not sure where they come from. I'll try to get this a bit more stable, but in the end will probably just buy a raspberry pi and use that as a build agent.
I'll keep this issue open until the builds are reliable.
@konrad why not using job with a windows /osx instance having docker desktop on it ? The buildx feature worked for me. I compiled vikunja arm version on my mac using this command
docker buildx build --platform linux/arm/v7 --output type=docker,dest=- . > vikunja_frontend_armv7.tar
. It can build for a lot of other plateforms too https://www.docker.com/blog/multi-platform-docker-builds/@YasserAntonio Because I neither have a windows or osx machine and I want to put this in a pipeline to not need to do this manually every time. It's something that can be automated very easily.
The arm images seem to work now. You should be able to use them just like you would on other platforms, by running
docker run vikunja/api
anddocker run vikunja/frontend
etc.Closing this issue as resolved, feel free to reopen if you feel it is not resolved.