Docker Installation — Overview
Apinizer is published as official images on Docker Hub. The images are built on Eclipse Temurin 25; the entrypoint reads the container's memory limit and automatically picks the right heap / direct-memory / metaspace values.
Sensitive values (MongoDB URI, secrets) are passed as plaintext environment variables in the Docker flow — the container does not run the boot-time ENC(...) decryption used by the Linux package. Use Docker Secrets (Compose / Swarm) or Kubernetes Secrets to inject them safely.
Installation Steps
Installation has two steps:
API Manager → Cache → Worker → (Optional) Integration — all on a single page in tabs, in order
Developer portal. Documented on a separate page; install after the Manager
If you want to bring everything up with a single docker-compose.yml:
Reference example that brings up all 5 modules in a single docker-compose.yml
Recommended Install Order
- MongoDB (must be installed first — see MongoDB Installation)
- API Manager → validates MongoDB connection, runs Mongock migrations
- Cache → brings up the Hazelcast cluster (single- or multi-node)
- Worker → fetches its Environment from Manager, connects to Cache
- Integration (optional) → starts the Quartz scheduler, registers with Manager
- API Portal → connects to the Manager REST API, serves the developer portal
Steps 2-5 live on the All-in-One Docker Installation page; step 6 lives on the API Portal page.
Image Convention
All images are published under apinizercloud/<module>:
| Module | Image |
|---|---|
| API Manager | apinizercloud/apimanager |
| API Portal | apinizercloud/apiportal |
| Worker | apinizercloud/worker |
| Cache | apinizercloud/cache |
| Integration | apinizercloud/integration |
Tag convention
| Tag | Channel | Note |
|---|---|---|
<MAJOR.MINOR.PATCH> (e.g. 2026.04.5) | release | Promoted to production |
<MAJOR.MINOR.PATCH>.qa.<N> (e.g. 2026.04.5.qa.1) | QA | Pre-release, may change |
<MAJOR.MINOR.PATCH>-rc.<id> | release candidate | Frozen, immutable |
<MAJOR.MINOR.PATCH>-SNAPSHOT | develop | Rolling, do not use in prod |
latest is not published — always pin to an explicit version tag.
On Apple Silicon (M1/M2/M3/M4)
Images currently publish only for linux/amd64. On Apple Silicon Macs Docker Desktop shows the warning "Image may have poor performance, or fail, if run via emulation". Workaround:
- Docker Desktop → Settings → General → enable "Use Rosetta for x86_64/amd64 emulation on Apple Silicon". Apple Rosetta is much faster than QEMU.
- For production, use an x86_64 Linux host.
Shared Prerequisites
All modules connect to the same MongoDB database
Which module uses which port
Upgrade
For upgrading on Docker: Upgrading on Docker