Files
inecs f8d3cbdd59 Initial commit: VMware vSphere API simulator scaffold.
Add the FastAPI app, PostgreSQL migrations, Docker/Helm packaging, API
contracts, docs, client examples, and the unit/integration/compatibility
test suite for local client and tooling labs without a real vCenter.
2026-07-18 04:42:11 +03:00

50 lines
1.8 KiB
Markdown

**Language / Язык:** [English](ports.md) | [Русский](ru/ports.md)
# vCenter ports in this simulator
Reference: [vSphere Networking Ports](https://ports.esp.vmware.com/) (vCenter Server).
The `api-gateway` (nginx) publishes the **primary vCenter HTTPS listener**
plus an HTTP lab face. Every published port proxies to the same FastAPI
process, which already path-routes REST (`/api`, `/rest`) and SOAP (`/sdk`)
internally — there is no separate port per protocol. The gateway also sets
`X-VMware-Service` / `X-Forwarded-Port` so clients and future routers can tell
which port was used.
## Published by Compose (`api-gateway`)
| Service | Container port | Host port (dev compose) |
|---|---:|---:|
| HTTP lab face | 80 | 80 |
| vCenter HTTPS (primary UI/API entry) | 443 | 443 |
Host ports match real vCenter defaults so remote clients can use
`https://<host>/` and `http://<host>/` without a non-standard port.
Override on release compose with `HTTP_PORT` / `HTTPS_PORT` if needed.
Also published by Compose (not via the gateway):
| Service | Host port (dev compose) |
|---|---:|
| PostgreSQL | `5434` (localhost only) |
Internal simulator process (not published to the host): `8080`.
## Path layout on HTTPS
| Surface | Path prefix | Status |
|---|---|---|
| vSphere REST | `/api/…`, `/rest/…` | implemented (core inventory + session) |
| SOAP / VIM SDK | `/sdk` | implemented (RetrieveServiceContent / Login / RetrieveProperties subset) |
| HttpNfcLease / NFC | `/nfc/…` | lab transfer handshake on the same HTTPS listener |
| Lab console | `/` | yes |
| Health | `/health/live`, `/health/ready` | yes |
## Documented but not published yet
| Service | Ports |
|---|---|
| VAMI / appliance management | 5480 |
| ESXi host management (if simulated later) | 443 (separate host) |
| Syslog / etc. | various |