Hi @raff & @ibacher & @jnsereko,
I’m dog-fooding the O3 deployment on a local M1 Mac right now.
I’ve installed Docker Desktop (including Docker Compose), and using the docker-compose.yml file, I’ve successfully got the 4 expected containers running:
Yet when I go to http://localhost/ , O3 never fully loads the login screen (or any screen); at best I get the grey OpenMRS background logo, but that’s it. Here’s what I see:
I cross-checked that dev3 is working (i.e. that nothing got pushed to the latest builds that might have brought it, and my instance, down); it’s slow to load (working with lower bandwidth a.t.m.) but does eventually load.
SPA_CONFIG_URLS be blank here: openmrs-distro-referenceapplication/docker-compose.yml at 78d6e5946f8b14ed3203d7ccf37d9db4ec3fadd3 · openmrs/openmrs-distro-referenceapplication · GitHub
Any gut sense about what I might be missing or doing wrong?
Sorry @grace that you are facing this. I think the backend ain’t starting correctly (backed dies at startup) hence any request to the backend returns
Am just wondering why it starts fine on GitHub actions, otherwise, all tests here would be failing
@grace please try restarting. Occasionally OpenMRS backend fails to startup properly after initial setup. I didn’t track down what’s happening yet. If it doesn’t help, then please share logs from the backend container.
so probably @grace
- stop all running docker images
- pull the latest docker images
- delete the old images with
docker image rm -f -v -l IMAGE_ID
@grace i used your instructions here: O3 Implementer Documentation: Set Up, Configure & Deploy - Projects - OpenMRS Wiki and got exactly the same problem as you did. On looking at the network tab, the call to
session was returning a
302. On looking at the general http headers, the
Request URL was
http://localhost/openmrs/ws/rest/v1/session and for the
Response Headers, the
http://localhost/openmrs/initialsetup which looked like OpenMRS was still initialising. Therefore because the app tries to make REST calls before the backend is done with the startup process, you will end up breaking the application. I confirmed this by removing the docker volumes and run the docker setup afresh, but this time giving the backend time to properly start before accessing the frontend app, and all turned out well.
This looks like what was reported on the ticket that you assigned to @corneliouzbett [RA-1769] Calling REST API during initialization break Reference Application - OpenMRS Issues
Yeah… one of the more troubling limitations of 3.x is that it doesn’t work well when the backend is just starting up. Either we should redirect the user to the initialsetup page or we should come up with something similar for the 3.x UI to do while waiting for the backend to startup.
This happened to me as well. Cleaning up containers and volumes helped.