-
Notifications
You must be signed in to change notification settings - Fork 26
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
Server is not responding on Mac M1 #13
Comments
What does:
show you? If one of the hosts has shutdown, we'll likely need to look into the log files. (One possibility is that there isn't enough memory) |
Output from NAME COMMAND SERVICE STATUS PORTS
docker-example-omero_database_1 "docker-entrypoint.s…" database running 5432/tcp
docker-example-omero_omeroserver_1 "/usr/local/bin/entr…" omeroserver running 0.0.0.0:4063-4064->4063-4064/tcp
docker-example-omero_omeroweb_1 "/usr/local/bin/entr…" omeroweb running 0.0.0.0:4080->4080/tcp Here is all the logs: omero-server logs
omero-database logs
omero-web logs
|
Hi @PandaGab, thanks for the output. Those look fine. It would help to also take a look at the internal Blitz-0.log. Could you share the following with us?
|
Hey ! Interestingly, there are no logs ! sh-4.2$ pwd
/opt/omero/server/OMERO.server/var
sh-4.2$ ls -la
total 12
drwxr-xr-x 2 omero-server omero-server 4096 Jun 29 08:56 .
drwxr-xr-x 1 omero-server omero-server 4096 Jun 29 08:56 .. |
Well that's odd! Can you check how much available memory there is in the omeroserver container? |
Sure ! sh-4.2$ whoami
omero-server
sh-4.2$ df -h /
Filesystem Size Used Avail Use% Mounted on
overlay 252G 7.5G 232G 4% / |
Thanks. And |
sh-4.2$ free -m
total used free shared buff/cache available
Mem: 7951 1308 5635 352 1007 6120
Swap: 4095 0 4095 |
Hmm.... that's a bit on the small side but I would think it would at least produce an error log. For reference:
|
Thanks for the logs. FYI : I tried on my old Mac (without the M1 chip) and got a working installation ! |
Glad to hear it, but really unfortunate that M1 is causing issues. If you (or anyone else) happens to find an error message or a log of some form, we'd love to see it. |
Has there been any progress on this issue? When I run the docker-compose pull command I get: no matching manifest for linux/arm64/v8 in the manifest list entries. As with PandaGab I got it to work without problems on an intel Mac. |
Hi @Helfrid. The "no matching manifest" issue has to do with there not being an arm build on docker hub. If you trying building the image locally, that should go away but then I assume you will run into the same problem as @PandaGab. Looking at this with @will-moore, I assume what we are running into is that there isn't an upstream build of the Ice packages. My assumption from looking briefly is that the dependencies look like this:
The solution, I believe, is to make a repository like zeroc-ice-ubuntu1804 which builds zeroc on arm and (e.g., "zeroc-ice-centos7-arm") and provides a downloadable package. If someone would like to test this theory (I don't have an m1 to help out 😬), then try a local build as suggested by @khaledk2 who tested on a Raspberry Pi (also arm):
See further instructions below. Related issues: |
Sorry, my fault; there is no need for this line to build Ice locally:
Also, after the building you should update the path and library path to be able to use the build. You can do that by editing the .bash_profile on the Mac machine and adding these two lines by the end of the file:
You should run this command then everything should be ready.
|
I've got some Ice packages compiled for Ubuntu arm64 in The binaries are inside the container image because the idea was to use Docker's multi-arch support to compile Ice as part of a cross-architecture build, but (perhaps inevitably) it hit the 6 hour time-limit so I spun up a temporary arm64 GitHub runner on Oracle cloud instead. Given this cross-build idea didn't work you're better off following the standard If you want a fully automated CI build you can sign up for a free Oracle Cloud account which includes "always* free" arm64 compute (* interpretation of "always" is an exercise for the reader) |
I tried this on my Mac M1...
And got the following... 1 error generated
|
Thanks to @manics and help from @alexherbert, I got this working now! Then: Thanks, everyone! |
@Helfrid In case it's not clear, I built those images as a proof-of-concept and they're not maintained. I'm not using OMERO anymore, but now that you know it works it might be good if you (or someone else) made the changes as described in #13 (comment) to get a proper supported production image. |
@joshmoore could you, or someone else from the Omero team follow up on @manics suggestion and set up a supported production image? |
Thanks all - this worked for me too: Can log-in an import images 👍
|
This issue has been mentioned on Image.sc Forum. There might be relevant details there: https://forum.image.sc/t/ome-types-rewritten-requesting-alpha-testers/83174/23 |
@joshmoore @jburel - As mentioned in last Tuesdays' meeting, and requested above: #13 (comment) As I understand from @pwalczysko (who is also using it) we need OME to host the Ice packages built by @manics (if that's OK?), then use those as in https://github.com/aherbert/docker-example-omero/tree/multi-arch. |
The problem of this workflow is that is based on a personal image not something we can support in our documentation |
I'm happy to transfer the repo to an org of your choice, or for someone to copy the code/artifacts and host them elsewhere. Just let me know 😄. Note the main constraint for having a full CI/CD workflow for arm64 ICe builds is that the Ice artifacts take too long to cross-compile on Docker, so your need an arm64 GitHub runner. Free arm64 VMs are available from Oracle Cloud Infrastructure, but private runners should not be added to public repos https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#self-hosted-runner-security In practice this probably means have a public and private mirror of the same repo. Alternatively since these artifacts are most likely a one-off you could just copy them, or build them locally once on a Mac M1 in Docker arm64. |
I now have an M1 machine and can offer to build these artifacts and push them if we want to go that route. |
@joshmoore That would be great, thanks! (and thanks to @manics for the offer too). |
So some thoughts/questions after chatting with @sbesson, @jburel, @pwalczysko, @khaledk2 and @dominikl:
|
Just ubuntu: https://github.com/manics/omero-server-docker/tree/ubuntu which depends on https://github.com/manics/omero-ice-docker The private repo is identical to the public one- the only difference is it has a private arm64 runner attached to it. The GH workflow is conditional on Having said all that, the only reason I went down this route is I didn't fancy forking/modifying the Ansible roles, so to make it faster to iterate I used a plain Dockerifle without Ansible. If you want to stick with the pattern used by the existing Docker images then I (optimistically?) assume you can ignore everything I've done, and instead:
|
This issue has been mentioned on Image.sc Forum. There might be relevant details there: https://forum.image.sc/t/omero-server-and-web-installation-on-linux-arm64/75628/6 |
@khaledk2 I read that you were able to install omero server on the Raspberry Pi? Great news! How was the performance? I was thinking about running this in combination with a python-based image acquisition script. Would this already be too much? Which Pi did you use and were you able to use the Docker-based installation? Thanks :) |
@beniroquai I have installed an Omero server instance on my Raspberry Pi 4 (quad-core ARM Cortex-A72 processor with 8 GB RAM, OS: Debian 10). I have built both Omero-server and ice locally. I have used Venv to create the Python virtual environment and install Omero-py. I have configured the database that has already been installed. I can start up the server and access it from Insight from my Windows machine. I have tested creating a project, and dataset, uploading images, and adding key-value pairs. I think all of them are working fine. I did not perform in-depth testing to evaluate the performance. |
Sounds very cool indeed! Thanks for reporting. Did you also setup any webapp to screen images from another machine? Am I right that you followed this tutorial? https://docs.openmicroscopy.org/omero/5.6.3/sysadmins/unix/server-ubuntu2004-ice36.html |
Hello,
When I try to log in after a fresh installation, I get the following error:
Thank you for you help,
Gabriel
The text was updated successfully, but these errors were encountered: