Port Mapping in docker-compose.production.yml file

Hi everyone, Pls l have a few issues here that l need clarifications on.

1.Pls which microservices is the front end for client, and on which port does it run on?
2.Pls what are these ports (flax_express port:8081) (flax _site port:8082) intended to do with reference to port mapping in the docker-compose.production.yml file.
Thanks.

Hello,

I am not sure that I follow the first question but let me try to provide an overview of the system for you:

The main component is Kotahi’s server which acts both like the main server/backend as well as it server the client application and its statics. You can define the public url of the main server using the ENV variable of SERVER_PROTOCOL, SERVER_HOST and SERVER_PORT.

The public url of the client application can be controlled via CLIENT_PROTOCOL, CLIENT_HOST and CLIENT_PORT if needed.

The microservices needed for Kotahi, based on the docker compose file are:

  • pagedjs you can define the public url of this service via:
    • SERVICE_PAGEDJS_PROTOCOL
    • SERVICE_PAGEDJS_HOST
    • SERVICE_PAGEDJS_PORT if applicable
  • xsweet
    • SERVICE_XSWEET_PROTOCOL
    • SERVICE_XSWEET_HOST
    • SERVICE_XSWEET_PORT if applicable
  • flax (which also contains a server and a client)
    • FLAX_EXPRESS_PORT (main server/backend port)
    • FLAX_EXPRESS_HOST
    • FLAX_EXPRESS_PROTOCOL
    • FLAX_SITE_PORT (the port where the server serves the client application of FLAX )
      also check FAQ.md · main · kotahi / Kotahi · GitLab

This means that these microservices along with their corresponding databases should be up and running prior to the boot of Kotahi’s server.

Please feel free to ask any more questions that you may have

1 Like

Thank you

With regards to the above explanation, I found this cokoapps / client · GitLab in the repository, Is there a need to deploy this separately as other services in production?

No, this is a library used by the apps, not a separate service.

1 Like