---
layout: article
title: Deploy from CLI
description: Learn to deploy Appwrite Sites from the Appwrite CLI.
---

Appwrite Sites allows you to host and deploy websites directly within the Appwrite platform. Each site can have many deployments, which can be thought of as versions of the web application.

While we recommend you create deployments through [automatic Git deployments](/docs/products/sites/deploy-from-git), you can also create deployments via the Appwrite CLI.

# CLI  {% #cli %} 

You can create sites using the CLI without needing to access the Console.

{% partial file="cli-disclaimer.md" /%}

To deploy your site with the Appwrite CLI, use the `appwrite init sites` command to create a starter site and paste your code into the generated file and folder.

```sh
appwrite init sites
```

To deploy the generated code, add any dependencies and push the site using the following command:

```sh
appwrite push sites
```

{% arrow_link href="/docs/tooling/command-line/sites#commands" %}
Learn more about the CLI sites commands
{% /arrow_link %}


## Configure CLI deployments {% #configure-cli-deployments %}
If you need to target a different project, API endpoint, change the path or entry point of your site, or update any of the other configuration options, 
you can do so by editing the `appwrite.config.json` file.

{% arrow_link href="/docs/tooling/command-line/sites#appwritejson" %}
Learn more about appwrite.config.json
{% /arrow_link %}

For larger projects, you can split site definitions into a separate JSON file with [multi-file CLI configuration](/docs/tooling/command-line/installation#multi-file-configuration).

# Debugging

- If you updated your site's configuration but the deployment is not working as expected, you may need to first redeploy your site before the changes take effect.
