# Website service

## Overview

The website service host allows you to display websites in tabs. Website service hosts are useful when you have a site that refuses to run in an `iframe` (*read: a tab*) . If your site is able to run in an `iframe`, you do not need to use a website service host, and you can just use the [Web applications tab type](https://docs.instruqt.com/tracks/challenges/challenge-tabs#web-based-applications).&#x20;

The website service is required to create the underlying resources for your virtual browser in your sandbox. Generally, you should always have a website service created for each site that you would like to view in your virtual browser. A virtual browser in a challenge by itself will not function without this website service configuration in your sandbox.

{% hint style="info" %}
Not sure if your site runs in an `iframe?` [You can test with this tool. ](https://iframetester.com/)
{% endhint %}

## Create website service hosts

You can define website service hosts with the CLI or web UI:

{% tabs %}
{% tab title="🌐 Web UI" %}

1. Select a track.
2. In the *Sandbox* section, click **Edit**.&#x20;
3. In the *Your hosts* section, click **+ Add a host**.&#x20;
4. Select **Website service**.
5. Input a name and URL for the host.
6. Click **Save host**.
   {% endtab %}

{% tab title="💻 Instruqt CLI" %}
Within a track's `config.yml` file, website service hosts are defined like so:

```markdown
virtualbrowsers:
- name: <name>
  url: <url_of_website>
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
Each sandbox is subject to a limit of **15 containers and website services combined** at any given time. This limitation helps ensure optimal performance and resource allocation for all users.
{% endhint %}
