# Setting Up Supabase via Command Line

<span lang="EN">For developers and teams who prioritize automation, version control, or deployment on remote servers, the command-line approach provides flexibility and repeatability. Using Docker and Docker Compose directly allows you to manage Supabase stacks efficiently and integrate the process into scripts or CI/CD pipelines.</span>

### <a name="_awye327y7chi"></a>**<span lang="EN">Step 1. Install Docker and Docker Compose</span>**

<span lang="EN"><span style="mso-list: Ignore;">●<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>**<span lang="EN">Linux:</span>**

<span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">sudo apt update</span>

<span lang="EN" style="mso-no-proof: yes;">![](https://dotroll.com/en/knowledge-base/uploads/images/gallery/2026-06/embedded-image-fc2qlw15.png)</span>

<span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">sudo apt install docker.io docker-compose -y</span>

<span lang="EN" style="mso-no-proof: yes;">![](https://dotroll.com/en/knowledge-base/uploads/images/gallery/2026-06/embedded-image-bgiksi0i.png)</span>

<span lang="EN"> </span>

<span lang="EN"><span style="mso-list: Ignore;">●<span style="font: 7.0pt 'Times New Roman';"> </span></span></span>**<span lang="EN">Windows/macOS:</span>**<span lang="EN"> Docker Desktop includes both tools, so no additional installation is needed.</span>

<span lang="EN">Verify Docker is running before proceeding.</span>

### <a name="_pwzwotzdo4a0"></a>**<span lang="EN">Step 2. Clone the Supabase Repository</span>**

<span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">git clone https://github.com/supabase/supabase.git</span>

<span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">cd supabase/docker</span>

<span lang="EN" style="mso-no-proof: yes;">![](https://dotroll.com/en/knowledge-base/uploads/images/gallery/2026-06/embedded-image-fpr9xyu9.png)</span>

<span lang="EN">This repository contains the </span><span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">docker-compose.yml</span><span lang="EN"> configuration defining all core services: PostgreSQL, APIs, authentication, Realtime, storage, and Supabase Studio.</span>

### <a name="_yrazy2nv8tcv"></a>**<span lang="EN">Step 3. Configure Environment Variables</span>**

<span lang="EN">Copy the example environment file and customize it:</span>

<span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">cp .env.example .env</span>

<span lang="EN" style="mso-no-proof: yes;">![](https://dotroll.com/en/knowledge-base/uploads/images/gallery/2026-06/embedded-image-t2zgjohp.png)</span>

<span lang="EN">Edit </span><span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">.env</span><span lang="EN"> to set your credentials and keys:</span>

<span lang="EN"><span style="mso-list: Ignore;">●<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">POSTGRES\_PASSWORD</span><span lang="EN">: PostgreSQL database password</span>

<span lang="EN"><span style="mso-list: Ignore;">●<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">JWT\_SECRET</span><span lang="EN">: authentication token secret</span>

<span lang="EN"><span style="mso-list: Ignore;">●<span style="font: 7.0pt 'Times New Roman';"> </span></span></span><span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">ANON\_KEY</span><span lang="EN"> and </span><span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">SERVICE\_ROLE\_KEY</span><span lang="EN">: API access keys</span>

<span lang="EN">Properly securing these values is critical, especially in production environments.</span>

### <a name="_5hiomom4wg69"></a>**<span lang="EN">Step 4. Launch Supabase</span>**

<span lang="EN">Start the services in detached mode:</span>

<span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">docker compose up -d</span>

<span lang="EN" style="mso-no-proof: yes;">![](https://dotroll.com/en/knowledge-base/uploads/images/gallery/2026-06/embedded-image-5bbaymwg.png)</span>

<span lang="EN">Docker Compose pulls all necessary images and runs the containers, including database, authentication, Realtime, API, and Studio.</span>

### <a name="_s8rupectq3k9"></a>**<span lang="EN">Step 5. Verify and Access the Platform</span>**

<span lang="EN">Check that all containers are running:</span>

<span lang="EN" style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #188038;">docker ps</span>

<span lang="EN" style="mso-no-proof: yes;">![](https://dotroll.com/en/knowledge-base/uploads/images/gallery/2026-06/embedded-image-sbn8lk4n.png)</span>

<span lang="EN">Then open Supabase Studio in your browser:  
<span style="mso-spacerun: yes;"> </span>[<span style="font-family: 'Roboto Mono'; mso-fareast-font-family: 'Roboto Mono'; mso-bidi-font-family: 'Roboto Mono'; color: #1155cc;">http://localhost:3000</span>](http://localhost:3000)</span>

<span lang="EN" style="mso-no-proof: yes;">![](https://dotroll.com/en/knowledge-base/uploads/images/gallery/2026-06/embedded-image-ltfitsoh.png)</span>

<span lang="EN">You now have full access to your self-hosted backend.</span>