Countly Enterprise Edition Docker images are hosted in GCR (Google Container Registry). In order to get access to them, you'll need to set up service account authentication in your container engine.
For plain Docker:
cat service-account.json | docker login -u _json_key --password-stdin https://gcr.io
kubectl create secret docker-registry countly-registry \ --docker-server=https://gcr.io \ --docker-username=_json_key \ --docker-password="$(cat service-account.json)"
imagePullSecrets: - name: countly-registry
Countly has quite a few images for different environments and deployment scenarios:
|API/Frontend CentOS||Recommended. General CentOS-based split images.|
|API/Frontend Debian||General Debian-based split images|
|Core||API & Frontend in one image. For simple low-load cases when you don't want to have overhead of multiple API & Frontend containers.|
CentOS images are preferred currently since they're better optimised (smaller).
Core images are simpler to deploy (less containers), but allow less granular scalability as you have to carry all the frontend dependencies and RAM requirements along with every additional container you add. Countly API processes/containers account for ~99% of compute resources in high load cases.
Please follow our configuration guide. Countly Enterprise Edition doesn't have any extra requirements for Docker-based installations. Standard setup would look like this:
- name: COUNTLY_PLUGINS
- name: COUNTLY_CONFIG__FILESTORAGE
- name: COUNTLY_CONFIG__MONGODB
- name: COUNTLY_CONFIG_HOSTNAME
- name: COUNTLY_CONFIG__MAIL_TRANSPORT
- name: COUNTLY_CONFIG__MAIL_CONFIG_HOST
- name: COUNTLY_CONFIG__MAIL_CONFIG_PORT
- name: COUNTLY_CONFIG__MAIL_CONFIG_AUTH_USER
- name: COUNTLY_CONFIG__MAIL_CONFIG_AUTH_PASS
Also please note that Countly Enterprise Edition uses more MongoDB databases than Community Edition, therefore you'll need to ensure that one of these is true (in the order of preference):
- You have no authentication for MongoDB.
- Authentication is made against admin database.
- Authentication is the same across all the databases and they do exist.
Please follow Securing MongoDB guide for more details.