Kheops deployment consists of several Docker projects. This post lists them, adopted from the CI docker-compose.
UI
1) kheops-ui:
image: osirixfoundation/kheops-ui:${KHEOPS_UI_IMAGE_TAG}
https://github.com/OsiriX-Foundation/KheopsUI
image: osirixfoundation/kheops-ui:${KHEOPS_UI_IMAGE_TAG}
https://github.com/OsiriX-Foundation/KheopsUI
Reverse Proxy
2) kheops-reverse-proxy:
image: osirixfoundation/kheops-reverse-proxy:${KHEOPS_REVERSE_PROXY_IMAGE_TAG}
Authorization
3) kheops-database (postgresql):
image: osirixfoundation/kheops-database:${KHEOPS_DATABASE_IMAGE_TAG}
https://github.com/OsiriX-Foundation/KheopsDatabase
4) kheops-authorization:
image: osirixfoundation/kheops-authorization:${KHEOPS_AUTHORIZATION_IMAGE_TAG}
5) kheops-dicomweb-proxy:
image: osirixfoundation/kheops-dicomweb-proxy:${KHEOPS_DICOMWEB_PROXY_IMAGE_TAG}
Zipper
6) kheops-zipper:
image: osirixfoundation/kheops-zipper:${KHEOPS_ZIPPER_IMAGE_TAG}
Authorization Proxy
7) pacs-authorization-proxy:
image: osirixfoundation/pacs-authorization-proxy:${PACS_AUTHORIZATION_PROXY_IMAGE_TAG}
DCM4CHEE PACS
8) ldap: LDAP Server initalized for the DICOM Archive
image: dcm4che/slapd-dcm4chee:${PACS_LDAP_IMAGE_TAG}
DCM4CHEE LDAP also internally uses its own Postgresql database.
9) archive:
image: osirixfoundation/kheops-dcm4chee-arc-psql:${KHEOPS_ARC_IMAGE_TAG}
In addition to these 9 docker containers, Keycloak runs in another VM and communicate with these containers.
We need to fit the dockers in an appropriate number of VMs.A conservative approach would be, 2 VMs.
1 with Keycloak and everything else with the Docker containers on the 2nd.
I think the Kheops proposed approach would be 7 VMs.
1. Keycloak
2. Kheops UI
3. Kheops Authorization
4. Reverse Proxy
5. Zipper
6. Authorization Proxy
7. DCM4Chee PACS
But maybe, Kheops UI and Kheops Authorization can be merged into a single Kheops VM. In that case, we can also move zipper into that Kheops VM. Probably Authorization Proxy should just live with dcm4chee PACS.
Then we have 4 VMs:
1. Keycloak
2. Kheops containers (kheops-ui, kheops-database, kheops-authorization, kheops-dicomweb-proxy, and kheops-zipper)
3. Reverse Proxy container (kheops-reverse-proxy)
4. DCM4Chee containers (slapd-dcm4chee, kheops-dcm4chee-arc-psql, and pacs-authorization-proxy)
I think the 4 VM route is decent.
No comments:
Post a Comment
You are welcome to provide your opinions in the comments. Spam comments and comments with random links will be deleted.