diff --git a/docs/docs/quickstart.md b/docs/docs/quickstart.md index ce22a6664..27922979f 100644 --- a/docs/docs/quickstart.md +++ b/docs/docs/quickstart.md @@ -45,20 +45,19 @@ Obtaining credentials from Microsoft 365 to allow Corso to run is a one-time ope ## Repository creation -To create a secure backup location for Corso, you will create a bucket in AWS S3 and then initialize the Corso -repository using an [encryption passphrase](/setup/configuration#environment-variables). The steps below use -`corso-test` as the bucket name but, if you are using AWS, you will need a different unique name for the bucket. +To create a secure backup location for Corso, you will need to initialize the Corso repository using an +[encryption passphrase](/setup/configuration#environment-variables) and a pre-created S3 bucket (Corso doesn't create +the bucket if it doesn't exist). The steps below use `corso-test` as the bucket name but, if you are using AWS, you +will need a different unique name for the bucket. -The following commands assume that all the configuration values from the previous step, `AWS_ACCESS_KEY_ID`, and -`AWS_SECRET_ACCESS_KEY` are available to the Corso binary or container. +The following commands assume that in addition to the configuration values from the previous step, `AWS_ACCESS_KEY_ID` +and `AWS_SECRET_ACCESS_KEY` (and `AWS_SESSION_TOKEN` if you are using temporary credentials) are available to the +Corso binary or container. ```powershell - # Create the AWS S3 Bucket - aws s3api create-bucket --bucket corso-test - # Initialize the Corso Repository $Env:CORSO_PASSPHRASE = "CHANGE-ME-THIS-IS-INSECURE" .\corso.exe repo init s3 --bucket corso-test @@ -68,9 +67,6 @@ The following commands assume that all the configuration values from the previou ```bash - # Create the AWS S3 Bucket - aws s3api create-bucket --bucket corso-test - # Initialize the Corso Repository export CORSO_PASSPHRASE="CHANGE-ME-THIS-IS-INSECURE" corso repo init s3 --bucket corso-test @@ -80,9 +76,6 @@ The following commands assume that all the configuration values from the previou ```bash - # Create the AWS S3 Bucket - aws s3api create-bucket --bucket corso-test - # Create an environment variables file mkdir -p $HOME/.corso cat < $HOME/.corso/corso.env @@ -107,16 +100,13 @@ The following commands assume that all the configuration values from the previou ## Create your first backup -Corso can do much more, but you can start by creating a backup of your Exchange mailbox. To do this, first ensure that -you are connected with the repository and then backup your own Exchange mailbox. +Corso can do much more, but you can start by creating a backup of your Exchange mailbox. If it has been a while since +you initialized the Corso repository, you might need to [connect to it again](/setup/repos#connect-to-a-repository). ```powershell - # Connect to the Corso Repository - .\corso.exe repo connect s3 --bucket corso-test - # Backup your inbox .\corso.exe backup create exchange --user ``` @@ -125,9 +115,6 @@ you are connected with the repository and then backup your own Exchange mailbox. ```bash - # Connect to the Corso Repository - corso repo connect s3 --bucket corso-test - # Backup your inbox corso backup create exchange --user ``` @@ -136,11 +123,6 @@ you are connected with the repository and then backup your own Exchange mailbox. ```bash - # Connect to the Corso Repository - docker run --env-file $HOME/.corso/corso.env \ - --volume $HOME/.corso:/app/corso ghcr.io/alcionai/corso:latest \ - repo connect s3 --bucket corso-test - # Backup your inbox docker run --env-file $HOME/.corso/corso.env \ --volume $HOME/.corso:/app/corso ghcr.io/alcionai/corso:latest \ diff --git a/docs/docs/setup/repos.md b/docs/docs/setup/repos.md index fb8d89327..fc6630637 100644 --- a/docs/docs/setup/repos.md +++ b/docs/docs/setup/repos.md @@ -4,6 +4,9 @@ description: "Configure backup repository" # Repositories +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + A Corso [repository](concepts#corso-concepts) stores encrypted copies of your backup data. Repositories are supported on the following object storage systems: @@ -12,16 +15,16 @@ import TOCInline from '@theme/TOCInline';
:::note -Depending on community interest, Corso may support other object storage backends in the future. +Depending on community interest, Corso will add support for other object storage backends in the future. ::: ## Amazon S3 ### Prerequisites -Before setting you your Corso S3 repository, the following prerequisites must be met: +Before setting up your Corso S3 repository, the following prerequisites must be met: -* S3 bucket for the repository already exists. Corso won't create it for you. +* The S3 bucket for the repository already exists. Corso won't create it for you. * You have access to credentials for a user or an IAM role that has the following permissions: ```json @@ -50,6 +53,7 @@ Before setting you your Corso S3 repository, the following prerequisites must be Corso supports the credential options offered by the AWS Go SDK. For Full details, see the *Specifying Credentials* section of the [official documentation](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html). +The two most commonly-used options are: * **Environment variables** - set and export `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`. If using temporary credentials derived by assuming an IAM Role, you will also need `AWS_SESSION_TOKEN`. @@ -61,8 +65,71 @@ section of the [official documentation](https://docs.aws.amazon.com/sdk-for-go/v ### Initialize repository -Before first use, you need to initialize a Corso repository with `corso repo init s3`. See command details +Before first use, you need to initialize a Corso repository with `corso repo init s3`. See the command details [here](/cli/corso_repo_init_s3). -If a repository already exists, you can connect to it with `corso repo connect s3`. See command details + + + + ```powershell + # Initialize the Corso Repository + $Env:CORSO_PASSPHRASE = "CHANGE-ME-THIS-IS-INSECURE" + .\corso.exe repo init s3 --bucket corso-test + ``` + + + + + ```bash + # Initialize the Corso Repository + export CORSO_PASSPHRASE="CHANGE-ME-THIS-IS-INSECURE" + corso repo init s3 --bucket corso-test + ``` + + + + + ```bash + # Initialize the Corso Repository + export CORSO_PASSPHRASE="CHANGE-ME-THIS-IS-INSECURE" + docker run --env-file $HOME/.corso/corso.env \ + --volume $HOME/.corso:/app/corso ghcr.io/alcionai/corso:latest \ + repo init s3 --bucket corso-test + ``` + + + + +### Connect to a repository + +If a repository already exists, you can connect to it with `corso repo connect s3`. See the command details [here](/cli/corso_repo_connect_s3). + + + + + ```powershell + # Connect to the Corso Repository + .\corso.exe repo connect s3 --bucket corso-test + ``` + + + + + ```bash + # Connect to the Corso Repository + corso repo connect s3 --bucket corso-test + ``` + + + + + ```bash + # Connect to the Corso Repository + docker run --env-file $HOME/.corso/corso.env \ + --volume $HOME/.corso:/app/corso ghcr.io/alcionai/corso:latest \ + repo connect s3 --bucket corso-test + ``` + + + diff --git a/docs/sidebars.js b/docs/sidebars.js index a18665190..87ccd0f2e 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -20,7 +20,7 @@ const sidebars = { { type: 'category', label: 'Corso setup', - items: ['setup/concepts', 'setup/m365_access', 'setup/repos', 'setup/configuration'], + items: ['setup/concepts', 'setup/m365_access', 'setup/configuration', 'setup/repos'], }, { type: 'category',