Back to Blog

NemoClaw Docker & Podman Install Guide: Troubleshooting Common Errors

# NemoClaw Docker & Podman Install Guide: Troubleshooting Common Errors Deploying NemoClaw via containers provides a consistent and isolated environment, but getting it running smoothly can sometimes present challenges, especially around networking and volume mounts. Whether you are using Docker or Podman, this guide covers the most frequent installation hurdles and how to resolve them. ## 1. Network Bridge and Port Conflicts The most common issue when spinning up NemoClaw is port allocation. NemoClaw’s gateway requires specific ports to communicate. **Symptom:** The container fails to start, throwing an error like `Bind for 0.0.0.0:8080 failed: port is already allocated`. **Fix:** Map to an available host port in your `docker-compose.yml` or run command. ```yaml ports: - "8081:8080" # Map host 8081 to container 8080 ``` ## 2. Podman Rootless Permissions Podman’s rootless mode is excellent for security, but NemoClaw might need to write to volumes mapped from the host. **Symptom:** `Permission denied` errors when the container tries to write logs or access state databases. **Fix:** Append the `:Z` or `:z` flag to your volume mounts to handle SELinux context correctly, or adjust host directory ownership. ```bash podman run -v /my/host/dir:/app/data:Z ... ``` ## 3. Insufficient Resource Limits NemoClaw can be memory-intensive during initial indexing or heavy task processing. **Symptom:** The container exits unexpectedly with code `137` (OOMKilled). **Fix:** Increase memory limits. In Docker Desktop, adjust resources in settings. In compose files: ```yaml deploy: resources: limits: memory: 4G ``` By proactively addressing these common pitfalls, you can ensure a stable and performant NemoClaw deployment, regardless of your container engine choice.