--- title: "Docker and Podman Deployment FAQ" slug: "docker-deployment-faq" description: "Explore Docker deployment FAQs for Rocket Chat. Enable secure setup and scalable collaboration." updated: 2026-03-12T19:07:11Z published: 2026-03-13T14:07:49Z canonical: "docs.rocket.chat/docker-deployment-faq" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.rocket.chat/llms.txt > Use this file to discover all available pages before exploring further. # Docker and Podman Deployment FAQ ****What are deployment environment variables?**** Environment variables in Rocket.Chat provide a structured and reliable way to configure deployments, manage workspace settings, and provision admin users without relying on the UI. They define key settings that influence or control how your workspace is deployed and configured. To set deployment enviroment variable, choose your deployment method below and follow the corresponding guide: 1. **Docker**: Refer to [Set Rocket.Chat deployment enviroment variable on Docker](/v1/docs/deploy-with-docker-docker-compose#set-rocketchat-deployment-environment-variable-on-docker). 2. **Kubernetes**: Visit the [Set Rocket.Chat deployment enviroment variable on Kubernetes](/v1/docs/deploy-with-kubernetes#set-rocketchat-deployment-environment-variable-on-kubernetes) guide. 3. **Podman**: Go to [Set Rocket.Chat deployment enviroment variable on Podman](/v1/docs/deploy-with-podman#set-rocketchat-deployment-environment-variable-on-podman). **Resources**: - [Deployment environment variable](/v1/docs/deployment-environment-variables): This document lists the mandatory and optional deployment variables. - [Manage settings using environmental variables](/v1/docs/manage-settings-using-environmental-variables): This document shows how you can manage workspace settings during deployment using environment variables. ## Docker ****How do I deploy Rocket.Chat with Docker on Apple Silicon Mac (M-series)?**** The Rocket.Chat Docker image (version 6.7.0 and later) is designed for the amd64 architecture, which is incompatible with the arm64 architecture used by Apple silicon Macs. Attempting to deploy the Docker image on an M-series Mac can result in compatibility issues. You will likely to get this error after starting the Rocket.Chat container: ```bash The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested ``` Follow the steps below to resolve it: 1. Ensure you have Rosetta 2 on your Mac; this allows the M-series Macs to run Intel-based applications. Confirm this by running: ```bash arch -x86_64 uname -m ``` If Rosetta 2 is installed, this command will output “**x86_64.**” If not, macOS will prompt you to install Rosetta 2. 2. Open Docker Desktop, navigate to **Settings** > **General** and enable Rosetta for Docker Desktop. This allows Docker to emulate x86_64/amd64 architecture. 3. In the `compose.yml` file, add “***platform: linux/amd64***” to the **rocketchat** service. 4. Next, add “***EXPERIMENTAL_DOCKER_DESKTOP_FORCE_QEMU: 1***” to the **mongodb** service environment. This forces the service to use the correct emulation settings. 5. Now, run `docker compose up -d` Your Rocket.Chat instance should now be accessible via `http://localhost:3000` or your `ROOT_URL`. ****Why are my ports blocked when using UFW with Docker?**** Docker and ufw use firewall rules in ways that make them incompatible with each other. For more details, see the official [Docker documentation](https://docs.docker.com/engine/network/packet-filtering-firewalls/#docker-and-ufw). ****Do I need to set up MongoDB myself before deploying?**** No. The `compose.database.yml` file provisions a pre-configured MongoDB instance with replica set support automatically. You only need to manage MongoDB yourself if you are connecting to an external database like a managed instance on MongoDB Atlas. ****How do I know if the Rocket.Chat is running successfully?**** To check if Rocket.Chat is running successfully on Docker: 1. Run the following command to list all the running services: ```bash docker ps ``` 2. Confirm that the Rocket.Chat container is running with a status of `Up`. Visit [Logging your Rocket.Chat deployment](/v1/docs/deploy-with-docker-docker-compose#monitoring-and-logging-your-deployment) for more details. ## Podman ****Why am I getting "permission denied" when binding to port 80 in rootless Podman?**** Linux prevents unprivileged users from binding to ports below 1024 by default. In rootless Podman, containers run without root privileges, so attempts to bind to port 80 (common with services like Traefik) will fail. To fix this, lower the unprivileged port threshold at the kernel level by running: ```bash echo "net.ipv4.ip_unprivileged_port_start=80" | sudo tee -a /etc/sysctl.conf sudo sysctl -p ``` > [!WARNING] > ⚠️This system-wide change allows any unprivileged user to listen on ports 80 and above. Be aware of this security implication.