|
1 | 1 | ---
|
2 |
| -title: Digital Ocean |
3 |
| -description: Defang allows you to easily create and manage full, scalable applications with Digital Ocean. |
4 |
| -sidebar_position: 000 |
| 2 | +title: DigitalOcean |
| 3 | +description: Defang allows you to easily create and manage full, scalable applications with DigitalOcean. |
| 4 | +sidebar_position: 010 |
5 | 5 | ---
|
6 | 6 |
|
7 | 7 | # Digital Ocean
|
8 | 8 |
|
9 | 9 | :::info
|
10 |
| -V1 Defang BYOC Digital Ocean Provider is in private beta as of September 2024. |
| 10 | +This feature is available for Public Preview as of October 2024. This page will be updated when it is GA. |
11 | 11 | :::
|
| 12 | + |
| 13 | +Why should you use Defang with DigitalOcean? Defang allows you to easily create and manage full, scalable applications with DigitalOcean. Defang aims to make it easier to deploy your services to the cloud. DigitalOcean is one of the most popular cloud providers in the world and with Defang, you dont have to waste your time understanding the complexities and challenges of the DigitalOcean platform. Let Defang do it for you and spend more time working on whats important to you! |
| 14 | + |
| 15 | +## Getting Started |
| 16 | +To get started with the Defang BYOC DigitalOcean Provider, first [install the latest version of the Defang CLI](../getting-started#authenticate-with-defang). Next make sure you have signed up for a [DigitalOcean account](https://try.digitalocean.com/freetrialoffer/). |
| 17 | + |
| 18 | +After signing up for your account, be sure to setup your [personal access token](https://docs.digitalocean.com/reference/api/create-personal-access-token/) as well as your [Spaces access key](https://docs.digitalocean.com/products/spaces/how-to/manage-access/). Next, save these values as environment variables with the names `DIGITALOCEAN_TOKEN`, `SPACES_ACCESS_KEY_ID`, and `SPACES_SECRET_ACCESS_KEY`. |
| 19 | + |
| 20 | +```bash |
| 21 | +export DIGITALOCEAN_TOKEN=<your-token> |
| 22 | +export SPACES_ACCESS_KEY_ID=<your-key-id> |
| 23 | +export SPACES_SECRET_ACCESS_KEY=<your-key> |
| 24 | +``` |
| 25 | + |
| 26 | +The Defang CLI will automatically check if they are set before running. Once you are ready to go, add the `--provider=digitalocean` to your command to tell the Defang CLI to use the DigitalOcean provider. |
| 27 | + |
| 28 | +```bash |
| 29 | +$ defang up --provider=digitalocean |
| 30 | +# or |
| 31 | +$ export DEFANG_PROVIDER=digitalocean |
| 32 | +``` |
| 33 | + |
| 34 | +## Region |
| 35 | + |
| 36 | +The Defang BYOC DigitalOcean Provider will use the region specified in the `REGION` environment variable. For a list of regions available in DigitalOcean, see the [region documentation](https://docs.digitalocean.com/platform/regional-availability/#app-platform-availability). |
| 37 | + |
| 38 | +## Architecture |
| 39 | + |
| 40 | +Defang uses resources that are native to the cloud provider you are using. The following describes the current state of Defang's support for DigitalOcean, the specific resources that Defang uses, and the roadmap for future support. |
| 41 | + |
| 42 | +### Deployment |
| 43 | + |
| 44 | +To deploy your services, the Defang CLI packages your code and uploads it to a [Spaces Object Storage](https://www.digitalocean.com/products/spaces) bucket in your account. The CLI then deploys an App Platform App that uses Pulumi to build your container image and run your service. |
| 45 | + |
| 46 | +### Runtime |
| 47 | + |
| 48 | +The Provider runs your workloads using the [DigitalOcean App Platform](https://docs.digitalocean.com/products/app-platform/). |
| 49 | + |
| 50 | +### Secrets |
| 51 | + |
| 52 | +Defang allows you to configure your services with sensitive config values. Sensitive values are added and stored with [encryption](https://docs.digitalocean.com/products/app-platform/how-to/use-environment-variables/) in your app once it has been deployed. |
| 53 | + |
| 54 | +### Future Improvements |
| 55 | + |
| 56 | +The following features are still in development for DigitalOcean: |
| 57 | +- [Custom Domains](/docs/concepts//domains.mdx) |
| 58 | +- [Managed Redis](/docs/concepts//managed-storage/managed-redis.md) |
| 59 | +- [Managed Postgres](/docs/concepts/managed-storage/managed-postgres.md) |
| 60 | + |
| 61 | +Stayed tuned for future updates! |
0 commit comments