Skip to content

Ports Reference

Complete list of network ports mapped by hemlock-lab containers.


Port Map

Port Service Container Purpose
8000 ChromaDB chromadb Vector database API
11434 Ollama host LLM inference + embeddings
8100 langchain-rag langchain-rag LangChain RAG pipeline
8101 llamaindex-rag llamaindex-rag LlamaIndex RAG pipeline
8102 unstructured-rag unstructured-rag Unstructured RAG pipeline
8103 haystack-rag haystack-rag Haystack RAG pipeline
8104 colpali-rag colpali-rag ColPALI multimodal pipeline

Port Assignment Convention

  • 8000 — Infrastructure services start at well-known ports
  • 11434 — Ollama's default port (runs on host, not in a container)
  • 8100-8199 — Reserved for RAG pipeline services (sequential assignment)

When adding a new pipeline, use the next available port in the 8100 range.


Docker Port Mapping

All ports are mapped as host:container in docker-compose.yml:

ports:
  - "8100:8100"  # host:container

Containers communicate internally via the hemlock-net Docker network using container names (e.g., chromadb:8000). Host port mappings are for external access and the test harness.

Lab environment only

hemlock-lab is designed for local development and isolated lab networks. Do not expose these ports to the internet or untrusted networks.


Checking Port Usage

# Check all services
for port in 8000 11434 8100 8101 8102 8103 8104; do
  echo -n "Port ${port}: "
  curl -sf --connect-timeout 2 "http://localhost:${port}/health" \
    && echo "UP" || echo "DOWN"
done
# Via Docker Compose
docker compose ps

Next Steps