# Getting started

# What is Elestio?

## **Elestio** is the simplest way to run Open Source Software.

##### Deploy any one of over 400+ supported open-source software distributions on a dedicated instance in less than 5 minutes.

Elestio's platform takes care of installation, configuration, encryption, backups, software &amp; OS updates, live monitoring, alerts, and more!

Some companies pay hundreds to thousands of dollars per month in DevOps costs to maintain open-source software projects. Unless you have a top-notch team, it's still an error-prone process: bad updates and migrations happen more often than anyone wants.

Even skilled administrators use our managed services, saving hours and days of work needed each month to maintain their services while avoiding the risks related to manual migrations (downtime, human error, loss of data).

With **Elestio** you can easily manage your fleet of open-source software solutions on **autopilot.**

[![dashboard-full2.png](https://docs.elest.io/uploads/images/gallery/2022-09/scaled-1680-/dashboard-full2.png)](https://docs.elest.io/uploads/images/gallery/2022-09/dashboard-full2.png)

<p class="callout info">Elestio guarantees your backups are up to date and that you can restore your OS or data from a backup at any time to get back up and running in a worst-case scenario.</p>

<p class="callout success">This "Get Started" video series is the best method to learn how to Deploy Open-Source Software on Elestio:</p>

<div id="bkmrk--1"></div><div class="style-scope ytd-watch-metadata" id="bkmrk--2"><div class="item style-scope ytd-watch-metadata" id="bkmrk--3"></div></div><iframe height="314" src="https://www.youtube.com/embed/zWyM6m3cWxE" width="560"></iframe>

# Create an account

To create a new account, first, go to <span style="text-decoration:underline;">[elestio signup](https://dash.elest.io/signup "Create an account on Elestio")</span> page

Securely connect elestio to your existing GitHub, GitLab, or Google accounts using OAuth2.

[![image-1641811927952.png](https://docs.elest.io/uploads/images/gallery/2022-01/scaled-1680-/image-1641811927952.png)](https://dash.elest.io/signup "Signup on Elestio")

Or sign-up using any valid email address:

[![Screenshot 2022-11-02 145117.png](https://docs.elest.io/uploads/images/gallery/2022-11/screenshot-2022-11-02-145117.png)](https://docs.elest.io/uploads/images/gallery/2022-01/image-1641812037749.png)

<p class="callout warning">MFA is enabled by default for new accounts created with an email address, and a new code is sent to your email address each time you log in. If you use OAuth, the security of your elestio account is determined by the security of the login provider you choose (Google, GitHub, GitLab), so make sure MFA is enabled!</p>

<p class="callout info">TOTP-based MFA from Authy, Google, and Microsoft authenticator is also supported by Elestio. You can manage these after signup inside the account setting. [Click](https://docs.elest.io/books/security/page/multi-factor-authentication "Click") here to know more!</p>

# Create a new service

##### 1. To create a new service, first open **[<span style="text-decoration:underline;">Elestio Dashboard</span>](https://dash.elest.io/ "Elestio Dashboard")**

[![dashboard-full2.png](https://docs.elest.io/uploads/images/gallery/2022-09/scaled-1680-/tO0dashboard-full2.png)](https://docs.elest.io/uploads/images/gallery/2022-09/tO0dashboard-full2.png)

<p class="callout info">**Use the category tabs to filter the selection of software.**  
[![Screenshot 2022-09-25 at 11.37.39.png](https://docs.elest.io/uploads/images/gallery/2022-09/scaled-1680-/screenshot-2022-09-25-at-11-37-39.png)](https://docs.elest.io/uploads/images/gallery/2022-09/screenshot-2022-09-25-at-11-37-39.png)  
</p>

#####   


Choose the template you want to deploy and click the *select* button for the next step. If you want to learn more about that template, click the *details* button.

##### 2. Select a provider, region, and data center in which to deploy your service

<p class="callout success">If you want to deploy the service on AWS, please see our [<span style="text-decoration:underline;color:rgb(230,126,35);">***documentation*** </span>](https://docs.elest.io/books/getting-started/page/create-a-new-service-with-bring-your-own-aws-account-byoaws "https://docs.elest.io/books/getting-started/page/create-a-new-service-with-bring-your-own-aws-account-byoaws")on how to do so.</p>

[![Screenshot 2023-03-31 123735.png](https://docs.elest.io/uploads/images/gallery/2023-03/screenshot-2023-03-31-123735.png)](https://docs.elest.io/uploads/images/gallery/2023-02/screenshot-2023-02-20-180020.png)

##### 3. Select the instance size that works for you

[![Screenshot 2022-09-25 at 11.45.10.png](https://docs.elest.io/uploads/images/gallery/2022-09/scaled-1680-/screenshot-2022-09-25-at-11-45-10.png)](https://docs.elest.io/uploads/images/gallery/2022-09/screenshot-2022-09-25-at-11-45-10.png)

##### 5. Set the support plans, and maintenance windows for OS &amp; software updates and give a name to your new service

<p class="callout info">OS updates include updates to the Linux kernel, security patches, and other important maintenance to keep your instance running smoothly.</p>

<p class="callout success">Software updates update the code of the open-source application itself. We respect semantic versioning, so we will only implement minor and patch updates, in order to avoid non-breaking changes.</p>

<p class="callout warning">Maintenance windows are specified in UTC</p>

[![Screenshot 2022-09-25 at 11.46.45.png](https://docs.elest.io/uploads/images/gallery/2022-09/scaled-1680-/screenshot-2022-09-25-at-11-46-45.png)](https://docs.elest.io/uploads/images/gallery/2022-09/screenshot-2022-09-25-at-11-46-45.png)

##### 6. Click the "Create Service" button on the right when you are ready to deploy

[![Screenshot 2023-11-28 235134.png](https://docs.elest.io/uploads/images/gallery/2023-11/scaled-1680-/screenshot-2023-11-28-235134.png)](https://docs.elest.io/uploads/images/gallery/2023-11/screenshot-2023-11-28-235134.png)

[![Screenshot 2022-09-29 173747.png](https://docs.elest.io/uploads/images/gallery/2022-09/screenshot-2022-09-29-173747.png)](https://docs.elest.io/uploads/images/gallery/2022-09/screenshot-2022-09-25-at-11-47-56.png)

##### 7. After a few seconds your new service will appear in the list with a status: "Service is in deployment". It should only take 2-3 minutes before your service will be ready to use.

[![Screenshot 2022-09-29 174701.png](https://docs.elest.io/uploads/images/gallery/2022-09/screenshot-2022-09-29-174701.png)](https://docs.elest.io/uploads/images/gallery/2022-01/image-1641899401774.png)

##### Once your service is ready you will get an email with details about the deployment of your software.

##### The URL and credentials to access the web UI or database application are also available in the **<span style="text-decoration:underline;">[Service Overview](https://docs.elest.io/books/service-dashboard/chapter/overview "Overview")</span>**

##### **<span style="text-decoration:underline;">[Get started on the elestio dashboard,](https://dash.elest.io/)</span> or <span style="text-decoration:underline;">[read more about it in our documentation.](https://docs.elest.io/shelves/getting-started)</span>**

# Newsletter

You can get the most recent information about Elestio features, supported software, and tips by subscribing to the elestio newsletter.

[  
![newsletter.png](https://docs.elest.io/uploads/images/gallery/2022-11/scaled-1680-/newsletter.png)](https://docs.elest.io/uploads/images/gallery/2022-11/newsletter.png)

You can subscribe to the elestio newsletter during sign-up by checking the box (Sign up for our newsletter) and later manage subscribed unsubscribes from your elestio account settings.

#### How to Subscribe to the Newsletter:

- Navigate to your account setting from the left sidebar or simply [<span style="text-decoration:underline;color:rgb(53,152,219);">*click*</span> ](https://dash.elest.io/account/user)here to directly go.
- In the user information, check the Newsletter checkbox.
- Click the submit button to save your information for the newsletter subscription.

#### To unsubscribe from the newsletter, follow these steps:

- Navigate to your account setting from the left sidebar or simply <span style="text-decoration:underline;">*[<span style="color:rgb(53,152,219);text-decoration:underline;">click</span> ](https://dash.elest.io/account/user)*</span>here to directly go.
- Uncheck the Newsletter checkbox in the user information.
- Click the submit button to save your information for the newsletter unsubscription.

# Create a new service with Bring your own AWS Account (BYOAWS)

##### To create a new service, first, open <span style="color:rgb(230,126,35);">[<span style="text-decoration:underline;">Elestio Dashboard</span>](https://dash.elest.io/ "https://dash.elest.io/")</span>, then go to *services* from the left sidebar and click the button to *create a new service*.

- ##### The first step is to choose a template or service to deploy, then click Deploy to proceed to the next step.


<p class="callout info">We offer more than 400 supported software templates, so you can pick the one you want to use. If you want to learn more about a specific template before using it, click the *Details* button. All of the templates and their details are also available on our *<span style="color:rgb(230,126,35);">[<span style="text-decoration:underline;">managed services</span>](https://elest.io/fully-managed-services "https://elest.io/fully-managed-services")</span>* page.</p>

[![image.png](https://docs.elest.io/uploads/images/gallery/2026-02/scaled-1680-/NRgimage.png)](https://docs.elest.io/uploads/images/gallery/2026-02/NRgimage.png)

<p class="callout info">**Use the category tabs to filter the selection of software.**  
[![Screenshot 2022-09-25 at 11.37.39.png](https://docs.elest.io/uploads/images/gallery/2022-09/scaled-1680-/screenshot-2022-09-25-at-11-37-39.png)](https://docs.elest.io/uploads/images/gallery/2022-09/screenshot-2022-09-25-at-11-37-39.png)  
</p>

#####   


- ##### Select Service Cloud Provider

> ##### We provide 9 cloud service providers as well as <span style="text-decoration:underline;">*[Bring Your Own VM](https://docs.elest.io/books/cloud-providers/page/byovm-bring-your-own-vm "https://docs.elest.io/books/cloud-providers/page/byovm-bring-your-own-vm")*</span>. You can choose AWS from this list.

<p class="callout success">Hetzner, Digital Ocean, LightSail, Linode, and Vultr providers' services are deployed on Elestio accounts, whereas AWS is Bring Your Own AWS account, so all of the services are deployed in your own AWS account.</p>

[![image.png](https://docs.elest.io/uploads/images/gallery/2026-02/scaled-1680-/image.png)](https://docs.elest.io/uploads/images/gallery/2026-02/image.png)

- ##### Now configure your AWS account with Elestio. We offer two types of connections: simple and access/secret keys.
    
    Choose the Access/Secret key way to connect your AWS account.

[![Screenshot 2023-02-20 204850.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/screenshot-2023-02-20-204850.png)](https://docs.elest.io/uploads/images/gallery/2023-02/screenshot-2023-02-20-204850.png)

<p class="callout warning">View our *<span style="text-decoration:underline;">**[<span style="color:rgb(132,63,161);text-decoration:underline;">documentation </span>](https://docs.elest.io/books/getting-started/page/how-to-create-aws-access-and-secret-key-for-byoaws "https://docs.elest.io/books/getting-started/page/how-to-create-aws-access-and-secret-key-for-byoaws")**</span>*to learn how to create AWS access and secret credentials.</p>

<p class="callout info">Refer to the AWS [**<span style="color:rgb(132,63,161);">documentation </span>**](https://docs.aws.amazon.com/systems-manager/latest/userguide/managed-instances-default-host-management.html)for guidance if you'd like to attach the IAM Instance Profile Role with SSM permissions to your EC2 instance.</p>

Enter your AWS Account <span style="color:rgb(230,126,35);">*AmazonEC2FullAccess access key*</span> and secret key here, then click the <span style="background-color:rgb(255,255,255);color:rgb(132,63,161);">*Verify* </span>button to validate your AWS access credentials.

<p class="callout success">Anytime you've configured your AWS account in the project settings, you can update your AWS Account Access and Secret credentials by choosing the *Project Settings* option from the left sidebar. Visit our [<span style="color:rgb(230,126,35);">*<span style="text-decoration:underline;">documentation</span>*</span> ](https://docs.elest.io/books/projects-teams/page/update-aws-account-access-and-secret-credentials "https://docs.elest.io/books/projects-teams/page/update-aws-account-access-and-secret-credentials")for more information.</p>

- ##### Select Service Cloud Region

[![Screenshot 2023-02-15 144448.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/screenshot-2023-02-15-144448.png)](https://docs.elest.io/uploads/images/gallery/2023-02/screenshot-2023-02-15-144448.png)

- ##### Select Service Plan

<p class="callout success">You can [<span style="text-decoration:underline;color:rgb(230,126,35);">*view* </span>](https://docs.elest.io/books/cloud-providers/page/aws-ec2-or-byoaws-bring-your-own-aws-account "https://docs.elest.io/books/cloud-providers/page/aws-ec2")a detailed list of all the AWS EC2 plans we offer.</p>

[![image.png](https://docs.elest.io/uploads/images/gallery/2026-02/scaled-1680-/miHimage.png)](https://docs.elest.io/uploads/images/gallery/2026-02/miHimage.png)

- ##### Choose the Disk Storage Size

<p class="callout success">By default, we configure it with 50 GB, but you can change it as needed between 50 GB and 10 TB.</p>

[![image.png](https://docs.elest.io/uploads/images/gallery/2026-02/scaled-1680-/8Zmimage.png)](https://docs.elest.io/uploads/images/gallery/2026-02/8Zmimage.png)

> You can resize your disc size after deployment at any time by clicking the Update Volume button in the *Main volume* section of the services overview. Visit our [<span style="color:rgb(230,126,35);">*<span style="text-decoration:underline;">documentation</span>*</span> ](https://docs.elest.io/books/services-dashboard/page/increase-aws-main-disk-or-volume-size "https://docs.elest.io/books/services-dashboard/page/increase-aws-disk-size")for more information.

- ##### Select Service Support

[![image.png](https://docs.elest.io/uploads/images/gallery/2026-02/scaled-1680-/csGimage.png)](https://docs.elest.io/uploads/images/gallery/2026-02/csGimage.png)

- ##### Provide the service name &amp; Admin email (used to create the admin account)

By default, the name was prefilled with the template name, and the email was prefilled with the project owner's email, but you can change this.

[![Screenshot 2023-02-15 150855.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/screenshot-2023-02-15-150855.png)](https://docs.elest.io/uploads/images/gallery/2023-02/screenshot-2023-02-15-150855.png)

- #####  Advanced Configuration

By default, all settings are already filled out, but you can alter them to suit your preferences.

<p class="callout info">OS updates include updates to the Linux kernel, security patches, and other important maintenance to keep your instance running smoothly.</p>

<p class="callout success">Software updates update the code of the open-source application itself. We respect semantic versioning, so we will only implement minor and patch updates in order to avoid non-breaking changes.</p>

<p class="callout warning">Maintenance windows are specified in UTC</p>

[![Screenshot 2023-02-15 151648.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/screenshot-2023-02-15-151648.png)](https://docs.elest.io/uploads/images/gallery/2023-02/screenshot-2023-02-15-151648.png)

- ##### Now, click the <span style="color:rgb(132,63,161);">*Create Service*</span> button to deploy your service.

[![image.png](https://docs.elest.io/uploads/images/gallery/2026-02/scaled-1680-/ctYimage.png)](https://docs.elest.io/uploads/images/gallery/2026-02/ctYimage.png)

<p class="callout success">After a few seconds, your new service will appear in the list with the status "Service is in deployment." It should only take 2-3 minutes for your service to be ready to use.</p>

[![Screenshot 2023-02-15 195543.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/screenshot-2023-02-15-195543.png)](https://docs.elest.io/uploads/images/gallery/2023-02/screenshot-2023-02-15-195543.png)

##### You will receive an email with information about the deployment of your software once your service is ready.

##### The URL and credentials for accessing the web UI or database application are sent via email and are also available in the <span style="color:rgb(132,63,161);">*Service Overview.*</span>

##### <span style="color:rgb(0,0,0);">Visit our [<span style="text-decoration:underline;">*documentation* </span>](https://docs.elest.io/books/services-dashboard "https://docs.elest.io/books/services-dashboard")to learn more about service management.</span>

##### **<span style="text-decoration:underline;">[Get started on the elestio dashboard,](https://dash.elest.io/)</span> or <span style="text-decoration:underline;">[read more about it in our documentation](https://docs.elest.io/ "https://docs.elest.io/")</span>**

# How to Create AWS Access and Secret Key for BYOAWS

##### To create your AWS Access and Secret Key, follow these steps.

- **Step 1**:- Use your AWS account ID or account alias, your IAM user name, and your password to sign in to the <span style="color:rgb(230,126,35);">*[IAM console](https://console.aws.amazon.com/iam)*</span>
- **Step 2**:- In the navigation bar on the upper right, choose your user name, and then choose **Security credentials**.

[![Instances-EC2-Management-Console (1).png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/instances-ec2-management-console-1.png)](https://docs.elest.io/uploads/images/gallery/2023-02/instances-ec2-management-console-1.png)

- **Step 3**:- If you want to create the AWS Access and Secret credentials with the root user, skip to **step 4**; otherwise, click ***Users*** on the left side of access management and then ***Add users***.

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/jGZimage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/jGZimage.png)

Enter your AWS Account access user name and click Next, Next, Next and Create User to proceed.

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/jkHimage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/jkHimage.png)

After clicking the Create User button, you will be taken to the user list. Choose your created user name from the user list and click on it.

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/Llnimage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/Llnimage.png)

Navigate to **Security Credentials** under User Details.

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/zSTimage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/zSTimage.png)

- **Step 4**:- Select **Create access key** from the **Access keys section**. If you already have two access keys, this button is disabled, and you must delete one before creating a new one.

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/image.png)](https://docs.elest.io/uploads/images/gallery/2023-02/image.png)

- - On the **Access key best practices &amp; alternatives** page, choose your use case to learn about additional options which can help you avoid creating a long-term access key. If you determine that your use case still requires an access key, choose **Other** and then choose **Next**.
    - (Optional) Set a description tag value for the access key. This adds a tag key-value pair to your IAM user. This can help you identify and rotate access keys later. The tag key is set to the access key id. The tag value is set to the access key description that you specify. When you are finished, choose to **Create access key**.

**<span style="color:rgb(132,63,161);">For Non-Root Users</span>:-** Choose **Command Line Interface** as an alternative and check the box, then click Next and **Create Access Key.**

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/8Fhimage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/8Fhimage.png)

 <span style="color:rgb(132,63,161);">**For Root User:-**</span> Check the box and click **Create Access Key**.

[![Screenshot 2023-02-20 122937.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/screenshot-2023-02-20-122937.png)](https://docs.elest.io/uploads/images/gallery/2023-02/screenshot-2023-02-20-122937.png)

- **Step 5**:- On the **Retrieve access keys** page, choose either **Show** to reveal the value of your user's secret access key, or **Download .csv file**. This is your only opportunity to save your secret access key. After you've saved your secret access key in a secure location, choose **Done**.

[![IAM-Management-Console.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/iam-management-console.png)](https://docs.elest.io/uploads/images/gallery/2023-02/iam-management-console.png)

- **Step 6**:- Now grant **Administration** access to the newly created keys.

> Elestio requires a *<span style="color:rgb(230,126,35);">AmazonEC2FullAccess </span>*permission to manage your Ec2 services

Navigate to permission in the user details to add the permission and select **Add Permission**

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/sLoimage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/sLoimage.png)

Select the **Attach policies directly** Tab to attach permission.

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/NgQimage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/NgQimage.png)

Now Enter *<span style="color:rgb(230,126,35);">AmazonEC2FullAccess</span><span style="color:rgb(230,126,35);"> </span>*into the search box and then select the *<span style="color:rgb(230,126,35);">AmazonEC2FullAccess </span>*permission from the results.

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/F8fimage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/F8fimage.png)

After Selecting both Click **Next** and then click **Add permission** to proceed.

[![Screenshot 2023-02-20 204006.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/screenshot-2023-02-20-204006.png)](https://docs.elest.io/uploads/images/gallery/2023-02/screenshot-2023-02-20-204006.png)

##### Follow these steps if you already have an access key and want to activate it instead of creating a new one.

- In the **Access keys** section, find the key to activate.

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/z5Limage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/z5Limage.png)

- To activate the key, go to **Actions** and select **Activate**.

[![image.png](https://docs.elest.io/uploads/images/gallery/2023-02/scaled-1680-/9pzimage.png)](https://docs.elest.io/uploads/images/gallery/2023-02/9pzimage.png)

<p class="callout success">Before adding keys to elestio, you must grant Administration access to them.</p>

# How to Deploy or Integrate a Service with Tor Onion on Elestio

To make your services accessible over Tor, you can configure a Tor service within your service Docker Compose setup. This will allow your service to function as an onion site, providing enhanced privacy and limiting access to Tor-compatible browsers. Here’s a guide to setting up your service with Tor on Elestio.

##### **Step 1: Set Up Your Service**

First, deploy a new service on Elestio or select an existing one you’ve already deployed.

##### **Step 2: Open the Editor**

Navigate to the **Tools** tab within your service and open the provided VS Code editor.

##### **Step 3: Stop the Current Container**

To stop the current container, run the following command:

```bash
docker-compose down -v;
```

##### **Step 4: Configure Docker Compose with Tor**

You’ll need to add a Tor service to your Docker Compose file. Below is an example Docker Compose configuration to run a nextcloud server accessible through a Tor onion address.

```yaml
version: "3.9"
services:
  app:
    image: elestio/nextcloud:${SOFTWARE_VERSION_TAG}
    restart: always
    # ports:
    #   - 172.17.0.1:22000:80
    volumes:
      - ./nextcloud:/var/www/html
      - ./apps:/var/www/html/custom_apps
      - ./config:/var/www/html/config
      - ./data:/var/www/html/data
  tor:
    image: jakejarvis/tor:latest
    restart: unless-stopped
    volumes:
      - ./tor-data:/var/lib/tor/
      - ./torrc:/etc/tor/torrc:ro
    depends_on:
      - app
volumes:
  tor-data:

```

<p class="callout info">In the Docker Compose example, we used the `jakejarvis/tor` image to demonstrate the setup, but you can substitute it with any other official or custom Tor image that suits your needs. This allows for flexibility in using a Tor configuration that aligns with specific requirements or preferences.</p>

##### **Step 5: Create the `torrc` File**

In the root directory of your project, create a file named `torrc`. This file configures Tor to run as a hidden service and specifies the settings for connecting to the web service.

Add the following content to `torrc`:

```bash
# This folder contains the public and private keys of the hidden
# service, probably provided by the host but can also be generated
# by Tor if it's missing.
HiddenServiceDir /var/lib/tor/hidden_service

# Point the hidden service to a web server (in this case, the web
# server container listening on port 80).
HiddenServicePort 80 app:80

# SOCKS proxy is only used for the container's internal healthcheck.
SocksPort 127.0.0.1:9050

```

##### **Step 6: Start the service.**

To start your services, use the following commands:

```bash
docker-compose up -d;
```

This will bring up both the app and Tor services, allowing Tor to generate the necessary onion address.

##### **Step 7: Obtain Your Onion URL**

Once your services are running, Tor will create an onion address for your service. You can find this address by accessing the `hostname` file in the `tor-data/hidden_service` directory. Use the following command to view your onion URL:

```bash
cat tor-data/hidden_service/hostname
```

This will output an onion address (like `abcdefghijklmno.onion`) that you can use to access your web service in a Tor-compatible browser like Tor Browser or Brave.

##### **Step 8: Update Service URL with Onion URL**

If your application has domain or URL settings in its environment variables or configurations, replace the current URL with your Tor onion URL. This ensures that your application will direct users to the onion address.

##### **Optional: Disable Access to the Public Internet**

To restrict access exclusively to the Tor network and block regular web traffic, you can disable external access by blocking port 443 in your security firewall settings. This can be configured through the firewall settings within the Security tab of your service, or via your cloud provider's firewall if using a BYOVM (Bring Your Own Virtual Machine).<span></span>

##### **Summary**

With these steps, you’ve configured your Elestio-deployed service to be accessible through a Tor onion address. This setup allows for private, anonymous access via Tor, enhancing your service's privacy and security.

<div class="contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary dark:bg-gray-950" id="bkmrk--1"></div>