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.
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
**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 |
|
||||
Reference in New Issue
Block a user