Skip to content

Commit ff45461

Browse files
Update README.md
1 parent 89d5de7 commit ff45461

File tree

1 file changed

+2
-99
lines changed

1 file changed

+2
-99
lines changed

README.md

Lines changed: 2 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# dstack Enterprise
22

33
`dstack` Enterprise extends the [open-source version](https://github.com/dstackai/dstack) of `dstack`
4-
with enterprise features such as a web user interface, advanced team management, and more.
4+
with SSO and other advanced governance features.
55
It’s fully compatible with the open-source `dstack` CLI and API.
66

7-
Request a free 60-day trial of `dstack` Enterprise [here](https://tally.so/r/3jBXP6).
7+
Request a free 60-day trial of `dstack` Enterprise [here](https://calendly.com/dstackai/discovery-call).
88

99
## Installation
1010

@@ -38,100 +38,3 @@ The version format for `dstack` Enterprise is `<dstack version>-<enterpise build
3838
The first part corresponds to the open-source dstack version and CLI, while the second part is the enterprise build number.
3939

4040
The history of `dstack` Enterprise releases can be found in the [`dstackai/dstack-enterprise`](https://github.com/dstackai/dstack-enterprise/releases) repo.
41-
42-
### Backward compatibility
43-
44-
`dstack` is backward compatible within its major version. For example, if `dstack` Enterprise
45-
is `0.18.1-v1`, the version of CLI or API must start with `0.18`.
46-
47-
## Environment variables
48-
49-
Here's the list of environment variables which you can override:
50-
51-
- `DSTACK_SERVER_DIR` – (Optional) The path to the directory where the `dstack` server stores the state. Defaults to `/root/.dstack/server`.
52-
- `DSTACK_DATABASE_URL` – (Optional) The database URL to use instead of default SQLite. Currently `dstack` supports Postgres. Example: `postgresql+asyncpg://myuser:mypassword@localhost:5432/mydatabase`.
53-
- `DSTACK_SERVER_ADMIN_TOKEN` – (Optional) The default token of the `admin` user. By default, it's generated randomly
54-
at the first startup.
55-
56-
## Configuring backends
57-
58-
When starting `dstack` Enterprise, ensure the `$DSTACK_SERVER_DIR/config.yml` file
59-
configures a backend for each cloud account that you'd like to use.
60-
61-
See the [server/config.yml reference](https://dstack.ai/docs/reference/server/config.yml.md#examples)
62-
for details on how to configure backends for all supported cloud providers.
63-
64-
## Updating `dstack` Enterprise
65-
66-
Updating `dstack` Enterprise to a newer version requires re-deploying it using the newer Docker image tag.
67-
68-
The server can be restarted without concern for submitted jobs, running instances, or gateways.
69-
Upon restart, it will resume tracking their states.
70-
71-
> [!NOTE]
72-
> Currently, only one instance of dstack Enterprise is allowed to run at a time. During server restart, the CLI or API may temporarily stop working.
73-
74-
## Persisting state
75-
76-
By default, `dstack` stores its state in `~/.dstack/server/data` using SQLite.
77-
To use a database, set the `DSTACK_DATABASE_URL` environment variable (see below).
78-
79-
### Replicate SQLite state via Litestream
80-
81-
If not using `DSTACK_DATABASE_URL`, you can still replicate the state to cloud object storage using Litestream. To do
82-
this, you need to set the following environment variables.
83-
84-
- `LITESTREAM_REPLICA_URL` - The url of the cloud object storage.
85-
Examples: `s3://<bucket-name>/<path>`, `gcs://<bucket-name>/<path>`, `abs://<storage-account>@<container-name>/<path>`, etc.
86-
87-
#### AWS S3
88-
89-
To persist state into an AWS S3 bucket, provide the following environment variables:
90-
91-
* `AWS_ACCESS_KEY_ID` - The AWS access key ID
92-
* `AWS_SECRET_ACCESS_KEY` - The AWS secret access key
93-
94-
#### GCP Storage
95-
96-
To persist state into an AWS S3 bucket, provide one of the following environment variables:
97-
98-
* `GOOGLE_APPLICATION_CREDENTIALS` - The path to the GCP service account key JSON file
99-
* `GOOGLE_APPLICATION_CREDENTIALS_JSON` - The GCP service account key JSON
100-
101-
#### Azure Blob Storage
102-
103-
To persist state into an Azure blog storage, provide the following environment variable.
104-
105-
* `LITESTREAM_AZURE_ACCOUNT_KEY` - The Azure storage account key
106-
107-
An alternative to configuring explicit credentials is to provide the default cloud credentials within the container.
108-
109-
> [!NOTE]
110-
> The use of Litestream requires that only one instance of the dstack server is running at a time.
111-
112-
## Configuring backups
113-
114-
It’s recommended to regularly back up the state. If the state is being persisted with Litestream, you can back up data using the standard mechanism provided by the cloud object storage.
115-
116-
It’s recommended to back up the state before every update to a newer minor version (e.g. from 0.17.1-v1 to 0.18.0-v3).
117-
118-
> [!NOTE]
119-
> If the state is being persisted with Litestream, before restoring a backup, it’s important to undeploy dstack Enterprise first.
120-
121-
## Managing users
122-
123-
It’s possible to create users and manage their permissions via UI. Each user can be configured with a global role: `User` or `Admin`. The global Admin role allows for managing any users and projects.
124-
125-
In addition to the global role, any user can be granted a project role: `User` or `Admin`. The project `User` role allows for the management of runs. The project Admin role permits managing the members of the project (other users who have permissions for this project).
126-
127-
### Configuring the admin token
128-
129-
During deployment, it’s important to configure `DSTACK_SERVER_ADMIN_TOKEN`. This token can be used by the admin to manage other users and projects. If the environment variable is not set, it's generated randomly at the first startup.
130-
131-
### Authentication
132-
133-
Currently, `dstack` Enterprise allows authentication using personal user tokens. Each user has their own token, which can be found or changed in the user's account settings. This token must be used for authentication to access the control plane, CLI, or API.
134-
135-
### Projects
136-
137-
Projects enable the isolation of different teams and their resources. Check out the [Projects](https://github.com/dstackai/dstack-enterprise/wiki/Projects) wiki page for more details on how to manage projects.

0 commit comments

Comments
 (0)