From 0dd0161f1ea1840d2a17bb6dbc38bf0044f76f27 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Sat, 9 Nov 2024 19:05:21 -0600 Subject: [PATCH] feat: add new docs --- .../docs/core/application/overview.mdx | 6 +- .../docs/core/application/providers.mdx | 34 +++---- .../docs/core/certificates/overview.mdx | 21 ++++ .../content/docs/core/cluster/overview.mdx | 3 +- .../content/docs/core/domain/requirements.mdx | 10 +- .../core/get-started/manual-installation.mdx | 10 +- .../docs/core/git-sources/bitbucket.mdx | 73 ++++++++++++++ .../content/docs/core/git-sources/github.mdx | 48 ++++++++++ .../content/docs/core/git-sources/gitlab.mdx | 79 +++++++++++++++ apps/docs/content/docs/core/meta.json | 30 +++++- .../docs/core/notifications/discord.mdx | 25 +++++ .../content/docs/core/notifications/email.mdx | 22 +++++ .../docs/core/notifications/overview.mdx | 22 +++++ .../content/docs/core/notifications/slack.mdx | 27 ++++++ .../docs/core/notifications/telegram.mdx | 28 ++++++ .../docs/core/registry/digital-ocean.mdx | 22 +++++ .../content/docs/core/registry/dockerhub.mdx | 19 ++++ apps/docs/content/docs/core/registry/ghcr.mdx | 19 ++++ .../content/docs/core/registry/overview.mdx | 23 +++++ .../docs/core/s3-destinations/actions.mdx | 30 ++++++ .../docs/core/s3-destinations/aws-s3.mdx | 63 ++++++++++++ .../core/s3-destinations/backblaze-b2.mdx | 26 +++++ .../core/s3-destinations/cloudflare-r2.mdx | 24 +++++ .../docs/core/server/appearance.cn.mdx | 12 --- .../content/docs/core/server/appearance.mdx | 13 --- .../content/docs/core/server/overview.mdx | 18 +--- .../docs/content/docs/core/server/profile.mdx | 3 +- .../docs/core/server/s3-destination.mdx | 96 +++++++++++++++++++ .../content/docs/core/ssh-keys/overview.mdx | 30 ++++++ .../content/docs/core/users/permissions.mdx | 26 +++++ 30 files changed, 787 insertions(+), 75 deletions(-) create mode 100644 apps/docs/content/docs/core/certificates/overview.mdx create mode 100644 apps/docs/content/docs/core/git-sources/bitbucket.mdx create mode 100644 apps/docs/content/docs/core/git-sources/github.mdx create mode 100644 apps/docs/content/docs/core/git-sources/gitlab.mdx create mode 100644 apps/docs/content/docs/core/notifications/discord.mdx create mode 100644 apps/docs/content/docs/core/notifications/email.mdx create mode 100644 apps/docs/content/docs/core/notifications/overview.mdx create mode 100644 apps/docs/content/docs/core/notifications/slack.mdx create mode 100644 apps/docs/content/docs/core/notifications/telegram.mdx create mode 100644 apps/docs/content/docs/core/registry/digital-ocean.mdx create mode 100644 apps/docs/content/docs/core/registry/dockerhub.mdx create mode 100644 apps/docs/content/docs/core/registry/ghcr.mdx create mode 100644 apps/docs/content/docs/core/registry/overview.mdx create mode 100644 apps/docs/content/docs/core/s3-destinations/actions.mdx create mode 100644 apps/docs/content/docs/core/s3-destinations/aws-s3.mdx create mode 100644 apps/docs/content/docs/core/s3-destinations/backblaze-b2.mdx create mode 100644 apps/docs/content/docs/core/s3-destinations/cloudflare-r2.mdx delete mode 100644 apps/docs/content/docs/core/server/appearance.cn.mdx delete mode 100644 apps/docs/content/docs/core/server/appearance.mdx create mode 100644 apps/docs/content/docs/core/ssh-keys/overview.mdx create mode 100644 apps/docs/content/docs/core/users/permissions.mdx diff --git a/apps/docs/content/docs/core/application/overview.mdx b/apps/docs/content/docs/core/application/overview.mdx index 9f881f6..bd7498d 100644 --- a/apps/docs/content/docs/core/application/overview.mdx +++ b/apps/docs/content/docs/core/application/overview.mdx @@ -3,7 +3,7 @@ title: Overview description: "Explore the multiple deployment methods available in Dokploy, including GitHub, Git, Docker, and automated deployments via webhooks." --- -Applications in Dokploy are treated as a single service or container, making it easy and intuitive for users to work with each application in its own workspace. +Applications in Dokploy are treated as a single service, entity or container, making it easy and intuitive for users to work with each application in its own workspace. We offer multiple functionalities that you can use to manage your applications, such as: @@ -46,11 +46,11 @@ There are two ways to assign a domain: This section provides advanced configuration options for experienced users. It includes tools for custom commands within the container, managing Docker Swarm settings, and adjusting cluster settings such as replicas and registry selection. These tools are typically not required for standard application deployment and are intended for complex management and troubleshooting tasks. -- **Run Command**: Execute custom commands directly in the container for advanced management or troubleshooting. +- **Run Command**: Execute custom commands directly in the container, after the application has been build & running. - **Cluster Settings**: Configure the number of replicas and select the Docker registry for your deployment to manage how your application scales and where it pulls images from. - **Swarm Settings**: Access additional Docker Swarm configurations for detailed orchestration and scaling across multiple nodes. - **Resources**: Adjust the CPU and memory allocation for your application. -- **Volumes**: To ensure data persistence across deployments, configure storage volumes for your application. +- **Volumes**: To ensure data persistence across deployments, configure storage volumes for your application, you can create Volumes, Binds, File Mounts. - **Ports**: Expose your application to the internet by configuring network ports. - **Traefik**: Modify Traefik settings to manage HTTP request handling for your application. diff --git a/apps/docs/content/docs/core/application/providers.mdx b/apps/docs/content/docs/core/application/providers.mdx index 4550be0..0884e10 100644 --- a/apps/docs/content/docs/core/application/providers.mdx +++ b/apps/docs/content/docs/core/application/providers.mdx @@ -10,38 +10,28 @@ Dokploy offers several deployment methods, streamlining the process whether you' - Bitbucket - Git (Any Git Provider) - Docker +- Drop(Drag and Drop .zip) -## GitHub +## GitHub, Gitlab, Bitbucket -Deploying via GitHub: - -1. Configure your GitHub repository in the `/dashboard/settings/git-providers`. -2. When creating an application, Dokploy automatically retrieves the available repositories and branches. - -## Gitlab - -Deploying via Gitlab: - -1. Configure your Gitlab repository in the `/dashboard/settings/git-providers`. -2. When creating an application, Dokploy automatically retrieves the available repositories and branches. - -## Bitbucket - -Deploying via Bitbucket: - -1. Configure your Bitbucket repository in the `/dashboard/settings/git-providers`. -2. When creating an application, Dokploy automatically retrieves the available repositories and branches. +Go to [Git Sources](/docs/core/git-sources/github) and select the provider you want to use. ## Git For deployments from any Git repository, whether public or private, you can use either SSH or HTTPS: -1. Enter the repository URL. -2. Specify the branch you wish to deploy. +### Public Repositories (HTTPS) + +1. Enter the repository URL in `HTTPS URL`. +2. Type the branch name. +3. Click on `Save`. ### Private Repositories -For private repositories, authenticate using SSH. We provide a lock icon to generate an SSH key. +For private repositories, is required to first create an SSH Key. + +1. Go to [SSH Keys](/docs/core/ssh-keys/overview) and click on `Create SSH Key`. +2. Click on `Generate RSA SSH Key` and copy the `Public Key`. + This action will create the files, but that doesn't mean it will work automatically. You need to adjust the Traefik configuration to use it, this configuration will make + to traefik can recognize the certificate. + \ No newline at end of file diff --git a/apps/docs/content/docs/core/cluster/overview.mdx b/apps/docs/content/docs/core/cluster/overview.mdx index 9a648cf..bfb7982 100644 --- a/apps/docs/content/docs/core/cluster/overview.mdx +++ b/apps/docs/content/docs/core/cluster/overview.mdx @@ -24,9 +24,8 @@ To start adding nodes to your cluster, you need a registry. The nodes require th ## Registry Options -We provide two methods to add a registry to your cluster: +We provide a method to add a registry to your cluster: -- **Custom Registry (Free)**: Set up a private registry on your server. - **External Registry (Paid)**: Use external registries like Docker Hub, DigitalOcean, AWS ECR, etc. diff --git a/apps/docs/content/docs/core/domain/requirements.mdx b/apps/docs/content/docs/core/domain/requirements.mdx index 6dfa357..be47a59 100644 --- a/apps/docs/content/docs/core/domain/requirements.mdx +++ b/apps/docs/content/docs/core/domain/requirements.mdx @@ -3,6 +3,9 @@ title: "Requirements" description: "See a requirements for a domain for the Dokploy panel" --- +import { Callout } from 'fumadocs-ui/components/callout'; + + This guide will give you an idea of the requirements to assign a domain to your Dokploy panel or use it in any other application, whether Docker Compose or otherwise. ## Requirements @@ -16,7 +19,12 @@ Before beginning, ensure you have a domain purchased from one of the following p - [Domain.com](https://www.domain.com/) -## Transfer Setup(Optional) + +If you don't have a domain, you can use our integrated free domains from Traefik.me in the Dokploy panel, without doing any configuration however is only for HTTP, if you want to have a HTTPS domain you need to buy a domain from one of the providers above. + + + +## Transfer Setup (Optional) We recommend transferring your domain to Cloudflare for free SSL certificates and flexibility in using tools: diff --git a/apps/docs/content/docs/core/get-started/manual-installation.mdx b/apps/docs/content/docs/core/get-started/manual-installation.mdx index 9c3ad98..9614c45 100644 --- a/apps/docs/content/docs/core/get-started/manual-installation.mdx +++ b/apps/docs/content/docs/core/get-started/manual-installation.mdx @@ -3,11 +3,13 @@ title: 'Manual Installation' description: 'Learn how to manually install Dokploy on your server.' --- -If you wish to customize the Dokploy installation on your server, you can modify several aspects: +If you wish to customize the Dokploy installation on your server, you can modify several enviroment variables: -1. **Use a specific port for Dokploy** - Ideal for avoiding conflicts with other services. -2. **Select a specific version of Dokploy** - Choose between versions like canary, latest, or a specific Docker tag (e.g., v0.0.1). -3. **Specify HTTP and HTTPS ports for Traefik** - Useful when running alongside other servers like Nginx. +1. **PORT** - Ideal for avoiding conflicts with other services. +2. **TRAEFIK_SSL_PORT** - Set to another port if you want to use a different port for SSL. +3. **TRAEFIK_PORT** - Set to another port if you want to use a different port for Traefik. +4. **ADVERTISE_ADDR** - Set to another IP address if you want to use a different IP address for Swarm. +5. **RELEASE_TAG** - Set to a dokploy docker hub tag(latest, canary, feature, etc) ## Installation Script diff --git a/apps/docs/content/docs/core/git-sources/bitbucket.mdx b/apps/docs/content/docs/core/git-sources/bitbucket.mdx new file mode 100644 index 0000000..ce24ce3 --- /dev/null +++ b/apps/docs/content/docs/core/git-sources/bitbucket.mdx @@ -0,0 +1,73 @@ +--- +title: Bitbucket +description: 'Configure your Bitbucket repositories for deployments. This includes setting up access tokens, repository names, and branches.' +--- + +import { Callout } from 'fumadocs-ui/components/callout'; + +Dokploy offer a way to connect your Bitbucket Repository to your Dokploy panel, you can use Groups Names or personal accounts. + +Go to `Git` and select `Bitbucket` as the source, then you can use the following options: + +- **Bitbucket Username**: Set the username that you want to connect to Dokploy. +- **App Password**: Set the app password you've created. +- **Workspace(Optional)**: Assign a workspace name, this is useful if you want to connect to another workspace. + +Follow the steps to connect your Bitbucket account to Dokploy. + +1. Go to `https://bitbucket.org/account/settings/app-passwords/new` . +2. Set Label: eg. `Dokploy-Bitbucket-App`. you can choose any name that you want. +3. In permissions make sure to select `Account: Read`, `Workspace membership: Read`, `Projects: Read` +, `Repositories: Read` `Pull requests: Read` and `Webhooks: Read and write`. +4. Click on `Create`. +5. Copy the `App Password` and paste it in Dokploy `Bitbucket` Modal section. +6. Set your `Bitbucket Username`. +7. (Optional) If you want to use Workspaces, go to `https://bitbucket.org/account/workspaces/`, eg. If you have +`dokploy-workspace` copy and paste it in Workspace Name. +7. Click on `Configure Bitbucket`. +8. If everything is correct, you can update enter to the Update Icon, and click on `Test Connection` to make sure everything is working. +9. Now you can use the repositories from your Gitlab Account in `Applications` or `Docker Compose` services. + + +Dokploy doesn't support Bitbucket Automatic deployments on each push you make to your repository. + + + +## Setup Automatic Deployments + +You can configure automatic deployments in Dokploy for the Following Services: + +1. **Applications** +2. **Docker Compose** + +The steps are the same for both services. + +1. Go to either `Applications` or `Docker Compose` and go to `Deployments` Tab. +2. Copy the `Webhook URL`. +3. Go to your Bitbucket Account and select the repository. +4. In the left menu, select `Repository Settings` and then `Webhooks`. +5. Click on `Add Webhook`. +6. Set any `Title` and the `URL` to the one you copied in the previous step. +7. In the Trigger section, select `Push Events`. +8. Click on `Add Webhook`. +10. Now you have automatic deployments enabled for the selected repository. + + +## Clarification on Automatic Deployments + +By default, Dokploy will automatically deploy your application on the Branch you have selected. + +eg. Let's suppose you have a `application` in this way: + +Repository: `my-app` +Branch: `feature` + +If you try to make a push on another branch eg. `main`, Dokploy will not automatically deploy your application, because +your application have selected `feature` as the Branch. + + +In the case you want to have multiple applications in the same repository, eg. (development, staging, production), you can create 3 `Applications` in Dokploy +and select the branch in each of them. + +This is very usefull if you want to have multiple environments for the same application. + \ No newline at end of file diff --git a/apps/docs/content/docs/core/git-sources/github.mdx b/apps/docs/content/docs/core/git-sources/github.mdx new file mode 100644 index 0000000..1e5cf45 --- /dev/null +++ b/apps/docs/content/docs/core/git-sources/github.mdx @@ -0,0 +1,48 @@ +--- +title: GitHub +description: 'Configure GitHub repositories for deployments. This includes setting up access tokens, repository names, and branches.' +--- + +import { Callout } from 'fumadocs-ui/components/callout'; + +Dokploy offer a way to connect your Github Repository to your Dokploy panel, you can use organizations or personal accounts. + +Go to `Git` and select `Github` as the source, then you can use the following options: + +- **Organization**: Select the organization that you want to connect to Dokploy. +- **Personal Account(Default)**: Select the account that you want to connect to Dokploy. + +Follow the steps to connect your Github account to Dokploy. + +1. Click on `Create Github App` to create a new Github App. +2. Set Github App Name: eg. `Dokploy-Github-App`. make sure this name is unique. +3. Click on `Create Github App`, then you will redirect to the `Git` section of Dokploy. +4. Now it will show a `Install` Button, click on it. +5. You can select the repositories that you want to dokploy be able to access, you can choose +select all repositories or select specific repositories. +6. Click on `Install & Authorize` to install the Dokploy App. +7. You will be redirected to the `Git` section of Dokploy. +8. Now you can use the repositories from your Github Account in `Applications` or `Docker Compose` services. + + +When you use this method, By default you will have Automatic deployments on each push you make to your repository. + + +## Clarification on Automatic Deployments + +By default, Dokploy will automatically deploy your application on the Branch you have selected. + +eg. Let's suppose you have a `application` in this way: + +Repository: `my-app` +Branch: `feature` + +If you try to make a push on another branch eg. `main`, Dokploy will not automatically deploy your application, because +your application have selected `feature` as the Branch. + + +In the case you want to have multiple applications in the same repository, eg. (development, staging, production), you can create 3 `Applications` in Dokploy +and select the branch in each of them. + +This is very usefull if you want to have multiple environments for the same application. + \ No newline at end of file diff --git a/apps/docs/content/docs/core/git-sources/gitlab.mdx b/apps/docs/content/docs/core/git-sources/gitlab.mdx new file mode 100644 index 0000000..8a0023d --- /dev/null +++ b/apps/docs/content/docs/core/git-sources/gitlab.mdx @@ -0,0 +1,79 @@ +--- +title: Gitlab +description: 'Configure Gitlab repositories for deployments. This includes setting up access tokens, repository names, and branches.' +--- + + +import { Callout } from 'fumadocs-ui/components/callout'; + +Dokploy offer a way to connect your Gitlab Repository to your Dokploy panel, you can use Groups Names or personal accounts. + + +Go to `Git` and select `Gitlab` as the source, then you can use the following options: + +- **Application ID**: Select the application ID that you want to connect to Dokploy. +- **Personal Secret**: Select the secret that you want to connect to Dokploy. +- **Group Name(Optional)**: Select the group name that you want to connect to Dokploy(Ideal for Gitlab Groups). + +Follow the steps to connect your Gitlab account to Dokploy. + +1. Go to `https://gitlab.com/-/profile/applications` and click on ` Add New Application`. +2. Set Application Name: eg. `Dokploy-Gitlab-App`. choose any name that you want. +3. Redirect URI: Copy the `Redirect URI` from Dokploy. eg. `https://dokploy.com/api/providers/gitlab/callback`. +4. Select Permissions: `api`, `read_user`, `read_repository`. +5. Click on `Save Application`. +6. Copy the `Application ID` and `Secret` from Gitlab and paste it in Dokploy `Gitlab` Modal section. +7. (Optional) If you want to use Groups, go to `https://gitlab.com/dashboard/groups` enter the group name you +want to connect, and look at the URL in the address bar, it will be something like this +`https://gitlab.com/dokploy-panel/frontend` you can use Nested Groups and SubGroups and copy the `dokploy-panel/frontend` from Gitlab and paste +it in Dokploy `Gitlab` Modal section. +8. Click on `Continue`. +9. Go Back to Dokploy and click on `Install` button. +10. Click on `Authorize`. +11. You will be redirected to the `Git` section of Dokploy. +12. Now you can use the repositories from your Gitlab Account in `Applications` or `Docker Compose` services. + + +Dokploy doesn't support Gitlab Automatic deployments on each push you make to your repository. + + + +## Setup Automatic Deployments + +You can configure automatic deployments in Dokploy for the Following Services: + +1. **Applications** +2. **Docker Compose** + +The steps are the same for both services. + +1. Go to either `Applications` or `Docker Compose` and go to `Deployments` Tab. +2. Copy the `Webhook URL`. +3. Go to your Gitlab Account and select the repository. +4. In the left menu, select `Settings` and then `Webhooks`. +5. Click on `Add Webhook`. +6. Set the `URL` to the one you copied in the previous step. +7. In the Trigger section, select `Push Events`. +8. Click on `Add Webhook`. +9. Click on `Save`. +10. Now you have automatic deployments enabled for the selected repository. + + +## Clarification on Automatic Deployments + +By default, Dokploy will automatically deploy your application on the Branch you have selected. + +eg. Let's suppose you have a `application` in this way: + +Repository: `my-app` +Branch: `feature` + +If you try to make a push on another branch eg. `main`, Dokploy will not automatically deploy your application, because +your application have selected `feature` as the Branch. + + +In the case you want to have multiple applications in the same repository, eg. (development, staging, production), you can create 3 `Applications` in Dokploy +and select the branch in each of them. + +This is very usefull if you want to have multiple environments for the same application. + \ No newline at end of file diff --git a/apps/docs/content/docs/core/meta.json b/apps/docs/content/docs/core/meta.json index 919a86b..e50f3d6 100644 --- a/apps/docs/content/docs/core/meta.json +++ b/apps/docs/content/docs/core/meta.json @@ -21,10 +21,32 @@ "server/overview", "server/profile", "server/appearance", - "server/s3-destination", - "server/certificates", - "server/users", - "server/cluster", + "---S3 Destinations---", + "s3-destinations/actions", + "s3-destinations/aws-s3", + "s3-destinations/cloudflare-r2", + "s3-destinations/backblaze-b2", + "---Git Sources---", + "git-sources/github", + "git-sources/gitlab", + "git-sources/bitbucket", + "---Notifications---", + "notifications/overview", + "notifications/email", + "notifications/slack", + "notifications/discord", + "notifications/telegram", + "---Users---", + "users/permissions", + "---Certificates---", + "certificates/overview", + "---Registry---", + "registry/overview", + "registry/dockerhub", + "registry/ghcr", + "registry/digital-ocean", + "---SSH Keys---", + "ssh-keys/overview", "---Application---", "application/overview", "application/providers", diff --git a/apps/docs/content/docs/core/notifications/discord.mdx b/apps/docs/content/docs/core/notifications/discord.mdx new file mode 100644 index 0000000..a29e674 --- /dev/null +++ b/apps/docs/content/docs/core/notifications/discord.mdx @@ -0,0 +1,25 @@ +--- +title: Discord +description: 'Configure discord notifications for your applications.' +--- + +Discord notifications are a great way to stay up to date with important events in your Dokploy panel. You can choose to receive notifications for specific events or all events. + +## Discord Notifications + +For start receiving discord notifications, you need to fill the form with the following details: + +- **Name**: Enter any name you want. +- **Webhook URL**: Enter the webhook URL. eg. `https://discord.com/api/webhooks/000000000000000/00000000-0000-0000-0000-000000000000` + +To Setup the Discord notifications, follow these steps: + +1. Go to Discord, and search your Discord server. +2. Go to `Server Settings` and click on `Integrations`. +3. Click on `Create a Webhook`. +4. Set a name for your webhook, eg. `dokploy_webhook`. +5. Click on the `Webhook` you've created and click on copy the `Webhook URL`. +6. Go to Dokploy `Notifications` and select `Discord` as the notification provider. +7. Use the `Webhook URL` you copied in the previous step. +8. Click on `Test` to make sure everything is working. +9. Click on `Create` to save the notification. diff --git a/apps/docs/content/docs/core/notifications/email.mdx b/apps/docs/content/docs/core/notifications/email.mdx new file mode 100644 index 0000000..89e7c89 --- /dev/null +++ b/apps/docs/content/docs/core/notifications/email.mdx @@ -0,0 +1,22 @@ +--- +title: Email +description: 'Configure email notifications for your applications.' +--- + + +Email notifications are a great way to stay up to date with important events in your Dokploy panel. You can choose to receive notifications for specific events or all events. + +## Email Notifications + +For start receiving email notifications, you need to fill the form with the following details: + + +1. **Name**: Enter any name you want. +2. **SMPT Server**: Enter the SMTP server address. eg. `smtp.gmail.com` +3. **SMTP Port**: Enter the SMTP server port. eg. `587` +4. **SMTP Username**: Enter the SMTP server username. eg. `your-email@gmail.com` +5. **SMTP Password**: Enter the SMTP server password. +6. **From Address** Enter the email address that will be used as the sender. +7. **To Address** Enter the email address that will be used as the recipient, you can add multiple addresses. + + diff --git a/apps/docs/content/docs/core/notifications/overview.mdx b/apps/docs/content/docs/core/notifications/overview.mdx new file mode 100644 index 0000000..b5ea691 --- /dev/null +++ b/apps/docs/content/docs/core/notifications/overview.mdx @@ -0,0 +1,22 @@ +--- +title: Overview +description: 'Configure general notifications for your applications and services.' +--- + +import { Callout } from 'fumadocs-ui/components/callout'; + +Dokploy offer multiples notifications options to notify about some events. + +1. **App Deploy**: Notify when a new version of your application is deployed. +2. **App Deploy Error**: Notify when a new version of your application fails to deploy. +3. **Docker Cleanup**: Notify when a Docker cleanup is triggered. +4. **Dokploy Restart**: Notify when Dokploy Server restarts. +5. **Database Backup**: Notify when a new database backup is created(Success or Error). + +## Providers: + +1. **Slack**: Slack is a platform for team communication and collaboration. +2. **Telegram**: Telegram is a messaging platform that allows users to send and receive messages. +3. **Discord**: Discord is generally used for communication between users in a chat or voice channel. +4. **Email**: Email is a popular method for sending messages to a group of recipients. + diff --git a/apps/docs/content/docs/core/notifications/slack.mdx b/apps/docs/content/docs/core/notifications/slack.mdx new file mode 100644 index 0000000..e3936a6 --- /dev/null +++ b/apps/docs/content/docs/core/notifications/slack.mdx @@ -0,0 +1,27 @@ +--- +title: Slack +description: 'Configure slack notifications for your applications.' +--- + + +Slack notifications are a great way to stay up to date with important events in your Dokploy panel. You can choose to receive notifications for specific events or all events. + +## Slack Notifications + +For start receiving slack notifications, you need to fill the form with the following details: + +- **Name**: Enter any name you want. +- **Webhook URL**: Enter the webhook URL. eg. `https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX` +- **Channel**: Enter the channel name that you want to send the notifications to. + +To Setup the slack notifications, follow these steps: + + +1. Go to `https://dokploy.slack.com/marketplace/A0F7XDUAZ-webhooks-entrantes` and click on `Add To Slack`. +2. Select the channel that you want to send the notifications to. +3. Click on `Add webhook to channel`. +4. Copy the `Webhook URL`. +5. Go to Dokploy `Notifications` and select `Slack` as the notification provider. +6. Use the `Webhook URL` you copied in the previous step. +7. In Channel section, select the channel that you want to send the notifications to. +7. Click on `Create` to save the notification. \ No newline at end of file diff --git a/apps/docs/content/docs/core/notifications/telegram.mdx b/apps/docs/content/docs/core/notifications/telegram.mdx new file mode 100644 index 0000000..64b81cf --- /dev/null +++ b/apps/docs/content/docs/core/notifications/telegram.mdx @@ -0,0 +1,28 @@ +--- +title: Telegram +description: 'Configure telegram notifications for your applications.' +--- + + +Telegram notifications are a great way to stay up to date with important events in your Dokploy panel. You can choose to receive notifications for specific events or all events. + +## Telegram Notifications + +For start receiving telegram notifications, you need to fill the form with the following details: + +- **Name**: Enter any name you want. +- **Bot Token**: Enter the bot token. eg. `123456789:ABCdefGHIjklMNOPqrstUVWXYZ` +- **Chat ID**: Enter the chat ID. eg. `123456789` + +To Setup the telegram notifications, follow these steps: + +1. Go to `https://telegram.me/botfather` and click on `Start Bot`. +2. Type `/newbot` and click on `Start`. +3. Set a name for your bot, eg. `dokploy_bot` make sure the name ends with `_bot`. +4. Copy the `Bot Token` and paste it in Dokploy `Telegram` Modal section. +5. Now you need to get the Chat ID, or create a new Channel +6. Search this bot in the search bar `@userinfobot`. +7. Type `/start` and it will return the chat ID. +8. Copy the `Chat ID` and paste it in Dokploy `Telegram` Modal section. +9. Click on test to make sure everything is working. +10. Click on `Create` to save the notification. diff --git a/apps/docs/content/docs/core/registry/digital-ocean.mdx b/apps/docs/content/docs/core/registry/digital-ocean.mdx new file mode 100644 index 0000000..17b6035 --- /dev/null +++ b/apps/docs/content/docs/core/registry/digital-ocean.mdx @@ -0,0 +1,22 @@ +--- +title: Digital Ocean +description: 'Configure a Digital Ocean Container Registry to store your images and artifacts.' +--- + +To configure a Digital Ocean Container Registry, you need to fill the form with the following details: + +1. Insert the Registry Name eg. `My Registry`. +2. Go to `https://cloud.digitalocean.com/registry/new` and click on `Create a Container Registry`. +3. Insert a lowercase name eg. `dokploy-username`. +4. Click on `Create Registry`. +5. Click on `Actions` and then `Download Docker Credentials`. +6. In Permissions select `Read` and `Write`. +7. Open the downloaded file and copy the auth value and type as `Password` in Dokploy Modal. +7. Go to `https://cloud.digitalocean.com/account/api/tokens` and click on `Generate New Token`. +8. In permissions select `Registry`. +7. Click on `Create`. +8. Copy the `access token` and paste it in Dokploy Modal as a `Username` field. +9. (Optional) If you pretend to use Cluster Feature, make sure to set a `Image Prefix`. +10. Registry URL: set `registry.digitalocean.com` +11. Click on `Test` to make sure everything is working. +12. Click on `Create` to save the registry. \ No newline at end of file diff --git a/apps/docs/content/docs/core/registry/dockerhub.mdx b/apps/docs/content/docs/core/registry/dockerhub.mdx new file mode 100644 index 0000000..281ad4c --- /dev/null +++ b/apps/docs/content/docs/core/registry/dockerhub.mdx @@ -0,0 +1,19 @@ +--- +title: Docker Hub +description: 'Configure Docker Hub to store your images and artifacts.' +--- + +To configure a Docker Hub registry, you need to fill the form with the following details: + +1. Insert the Registry Name eg. `My Registry`. +2. Insert the Username eg. `dockerhub_username`. +3. Insert the Password, you can use your own dockerhub password or generate a token here `https://app.docker.com/settings/personal-access-tokens` +4. Click on Generate Token. +5. Insert the Token Description eg. `dockerhub_token`. +6. In permissions make sure to select `Read` and `Write`. +7. Click on `Create`. +8. Copy the `access token` and paste it in Dokploy `Docker Hub` Modal section. +9. (Optional) If you pretend to use Cluster Feature, make sure to set a `Image Prefix` and `Registry URL`. +10. Click on `Test` to make sure everything is working. +11. Click on `Create` to save the registry. + diff --git a/apps/docs/content/docs/core/registry/ghcr.mdx b/apps/docs/content/docs/core/registry/ghcr.mdx new file mode 100644 index 0000000..2903f68 --- /dev/null +++ b/apps/docs/content/docs/core/registry/ghcr.mdx @@ -0,0 +1,19 @@ +--- +title: GHCR +description: 'Configure GitHub Container Registry to store your images and artifacts.' +--- + +To configure a GitHub Container Registry, you need to fill the form with the following details: + +1. Insert the Registry Name eg. `My Registry`. +2. Insert the Username eg. `github_username`. +3. Insert the Password, you can use your own github password or generate a token here `https://github.com/settings/tokens` +4. Click on Generate Token (Classic). +5. Insert the Note Description eg. `github_token`. +6. In permissions make sure to select `write:packages`. +7. Click on `Create`. +8. Copy the `access token` and paste it in Dokploy Modal as a Password field. +9. (Optional) If you pretend to use Cluster Feature, make sure to set a `Image Prefix`. +10. Registry URL: set `https://ghcr.io` +11. Click on `Test` to make sure everything is working. +12. Click on `Create` to save the registry. \ No newline at end of file diff --git a/apps/docs/content/docs/core/registry/overview.mdx b/apps/docs/content/docs/core/registry/overview.mdx new file mode 100644 index 0000000..a165e3e --- /dev/null +++ b/apps/docs/content/docs/core/registry/overview.mdx @@ -0,0 +1,23 @@ +--- +title: Overview +description: 'Configure your registry settings to store your images and artifacts.' +--- + +Dokploy offers a UI to connect to any Docker Registry. + + + +## Registry Settings + +You need to fill the form with the following details: + +- **Registry Name**: Enter a name for your registry eg. `My Registry`. +- **Username**: Enter the username you want to use to connect to your registry. +- **Password**: Enter the password you want to use to connect to your registry. +- **Image Prefix(Optional)**: Useful when using Cluster feature, to tag your images with a prefix eg. `dokploy` will convert to `dokploy/my-app:latest`. +- **Registry URL**: Enter the URL of your registry eg. `https://index.docker.io/v1`. + +This approach allows you to authenticate and store your credentials on the machine, +making it convenient when using multiple applications. You won't need to provide credentials +for each one individually. It also enables seamless login to remote servers. If no server is selected, +Dokploy will default to using its own server. \ No newline at end of file diff --git a/apps/docs/content/docs/core/s3-destinations/actions.mdx b/apps/docs/content/docs/core/s3-destinations/actions.mdx new file mode 100644 index 0000000..60bb767 --- /dev/null +++ b/apps/docs/content/docs/core/s3-destinations/actions.mdx @@ -0,0 +1,30 @@ +--- +title: Actions +description: 'Manage S3 destinations.' +--- + +import { Callout } from 'fumadocs-ui/components/callout'; + +The S3 Destinations section are essential for backing up your databases. + +## Actions: + +1. **Create**: Create a new S3 destination. +2. **Delete**: Delete a S3 destination. +3. **Edit**: Edit a S3 destination. +4. **Test**: Test a S3 destination. + +### Create + +In order to create a new S3 Bucket, you need to fill the form. + +- **Name**: This could be anything you want, it will be the name. +- **Access Key**: This is the access key that you will use to access your bucket. +- **Secret Key**: This is the secret key that you will use to access your bucket. +- **Bucket**: This is the bucket that you will use to access your bucket. +- **Region**: This is the region that you will use to access your bucket. +- **Endpoint**: This is the endpoint that you will use to access your bucket. + + + There is a Button `Test` that will test the connection to your bucket, if it is correct it will show you a success message. + \ No newline at end of file diff --git a/apps/docs/content/docs/core/s3-destinations/aws-s3.mdx b/apps/docs/content/docs/core/s3-destinations/aws-s3.mdx new file mode 100644 index 0000000..0565a90 --- /dev/null +++ b/apps/docs/content/docs/core/s3-destinations/aws-s3.mdx @@ -0,0 +1,63 @@ +--- +title: AWS S3 +description: 'Configure S3 buckets for backup storage. This includes setting up access keys, secret keys, bucket names, regions, and endpoints.' +--- +import { Callout } from 'fumadocs-ui/components/callout'; + + +AWS provides a simple and cost-effective way to store and retrieve data. It is a cloud-based service that allows you to store and retrieve data from anywhere in the world. This is a great option for storing backups, as it is easy to set up and manage. + +1. Create a new bucket and set any name you want. +2. Search for `IAM` in the search bar. +3. Click on `Policies` in the left menu. +4. Click on `Create Policy`. +5. Select `JSON` and paste the following policy: +Make sure to replace the bucket name with your bucket name. +```json +{ + "Version": "2012-10-17", + "Statement": [ + { + "Sid": "AllowListBucket", + "Effect": "Allow", + "Action": "s3:ListBucket", + "Resource": "arn:aws:s3:::bucket-name" + }, + { + "Sid": "AllowBucketObjectActions", + "Effect": "Allow", + "Action": [ + "s3:GetObject", + "s3:PutObject", + "s3:DeleteObject" + ], + // Make sure to set the name of your bucket + "Resource": "arn:aws:s3:::bucket-name/*" + } + ] +} +``` +6. Click on `Review Policy`. +7. Assign a name to the policy. +8. Click on `Create Policy`. +9. Click on User Group and assign a Name. +10. Click on `Add User to Group`. +11. Add the user you want to assign to the group. +12. In the `Attached Policies` section, filter by type `Customer Managed` and select the policy you created. +13. Click on `Attach Policy`. +14. Go to `Users` and select the user you've assigned to the group. +15. Go to Security Credentials. +16. Click on `Create Access Key`. +17. Select `Programmatic Access`. +18. Click on `Create New Access Key`. + +Now copy the following variables: + +- `Access Key` -> `Access Key (Dokploy)` = eg. `AK2AV244NFLS5JTUZ554` +- `Secret Key` -> `Secret Key (Dokploy)` = eg. `I0GWCo9fSGOr7z6Lh+NvHmSsaE+62Vwk2ua2CEwR` +- `Bucket` -> `Bucket (Dokploy)` = eg. `dokploy-backups` use the name of the bucket you created. +- `Region` -> `Region (Dokploy)` = eg. `us-east-1, us-west-2, etc` it will depend on the region you are using. +- `Endpoint` -> `Endpoint (Dokploy) (Optional)` = eg. `https://.s3..amazonaws.com` you will find this endpoint in the Bucket Card at the Home Page. + + +Test the connection and you should see a success message. \ No newline at end of file diff --git a/apps/docs/content/docs/core/s3-destinations/backblaze-b2.mdx b/apps/docs/content/docs/core/s3-destinations/backblaze-b2.mdx new file mode 100644 index 0000000..eececc9 --- /dev/null +++ b/apps/docs/content/docs/core/s3-destinations/backblaze-b2.mdx @@ -0,0 +1,26 @@ +--- +title: Backblaze B2 +description: 'Configure buckets from Backblaze B2 for backup storage. This includes setting up access keys, secret keys, bucket names, regions, and endpoints.' +--- + + +Backblaze B2 is a cloud-based service that allows you to store and retrieve data from anywhere in the world. This is a great option for storing backups, as it is easy to set up and manage. + + +## Backblaze B2 Example Bucket + +1. Create a new bucket and set any name you want. +2. Go to `Application Keys` and create a new key. +3. Set a Key Name. +4. Set the Allow Access to Bucket(s) to `All Buckets` or `Specific Buckets`. +4. Set type of access `Read & Write` Permission. + +Now copy the following variables: + +- `Access Key` -> `Access Key (Dokploy)` = eg. `002s6acf2639910000d000005` +- `Secret Key` -> `Secret Key (Dokploy)` = eg. `K00+rIsWqPMhmcgqcyOyb9bqby7pbpE` +- `Region` -> `Region (Dokploy)` = eg. `eu-central-003, us-east-005, us-west-002, us-west-001, us-west-004, etc` it will depend on the region you are using. +- `Endpoint` -> `Endpoint (Dokploy)` = eg. `https://s3.us-west-002.backblazeb2.com` you will find this endpoint in the Bucket Card at the Home Page. +- `Bucket` -> `Bucket (Dokploy)` = eg. `dokploy-backups` use the name of the bucket you created. + +Test the connection and you should see a success message. \ No newline at end of file diff --git a/apps/docs/content/docs/core/s3-destinations/cloudflare-r2.mdx b/apps/docs/content/docs/core/s3-destinations/cloudflare-r2.mdx new file mode 100644 index 0000000..b2f92b8 --- /dev/null +++ b/apps/docs/content/docs/core/s3-destinations/cloudflare-r2.mdx @@ -0,0 +1,24 @@ +--- +title: Cloudflare R2 +description: 'Configure R2 buckets for backup storage. This includes setting up access keys, secret keys, bucket names, regions, and endpoints.' +--- + + +Cloudflare is a popular choice for hosting static assets, such as images, videos, and documents. It is a cloud-based service that allows you to store and retrieve data from anywhere in the world. This is a great option for storing backups, as it is easy to set up and manage. + +1. Create a new bucket and any name you want. +2. Go to initial R2 Screen, and go to `Manager R2 API Tokens` and create a new token. +3. Set a Token Name +4. Set `Object Read & Write` Permission. +5. (Optional) Set Specify bucket, by default it will include all buckets. +6. Create the token. + +Now copy the following variables: + +- `Access Key` -> `Access Key (Dokploy)` = eg. `f3811c6d27415a9s6cv943b6743ad784` +- `Secret Key` -> `Secret Key (Dokploy)` = eg. `aa55ee40b4049e93b7252bf698408cc22a3c2856d2530s7c1cb7670e318f15e58` +- `Region` -> `Region (Dokploy)` = eg. `WNAM, ENAM, etc` it will depend on the region you are using. +- `Endpoint` -> `Endpoint (Dokploy)` = eg. `https://8ah554705io7842d54c499fbee1156c1c.r2.cloudflarestorage.com` +- `Bucket` -> `Bucket (Dokploy)` = eg. `dokploy-backups` use the name of the bucket you created. + +Test the connection and you should see a success message. \ No newline at end of file diff --git a/apps/docs/content/docs/core/server/appearance.cn.mdx b/apps/docs/content/docs/core/server/appearance.cn.mdx deleted file mode 100644 index fdb41e9..0000000 --- a/apps/docs/content/docs/core/server/appearance.cn.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: 外观 -description: '调整服务器界面的视觉外观。' ---- - -外观部分允许您自定义服务器界面的视觉外观。 - -## 主题 - -1. **明亮**: 选择明亮主题。 -2. **黑暗**: 选择黑暗主题。 -3. **系统**: 选择系统主题。 diff --git a/apps/docs/content/docs/core/server/appearance.mdx b/apps/docs/content/docs/core/server/appearance.mdx deleted file mode 100644 index faa7e5e..0000000 --- a/apps/docs/content/docs/core/server/appearance.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: Appearance -description: 'Adjust the visual appearance of your server interface.' ---- - - -The Appearance section allows you to customize the visual appearance of your server interface. - -## Theme - -1. **Light**: Select the light theme. -2. **Dark**: Select the dark theme. -3. **System**: Select the system theme. diff --git a/apps/docs/content/docs/core/server/overview.mdx b/apps/docs/content/docs/core/server/overview.mdx index 28837de..b884ddf 100644 --- a/apps/docs/content/docs/core/server/overview.mdx +++ b/apps/docs/content/docs/core/server/overview.mdx @@ -13,12 +13,7 @@ Set the server domain to make your panel accessible via a domain. 1. Set the domain 2. Set the Let's Encrypt email. -3. Choose a certificate option. - -## Github - -Configure your GitHub account to manage organization or personal projects. This section guides you through creating a GitHub app and deploying repositories. - +3. Choose a certificate option (None, Let's Encrypt). ## Web server settings @@ -30,9 +25,6 @@ The `Server` section provides various functions: - **Reload Instance**: Reload the Dokploy instance. - **Watch Logs**: Monitor server logs. -- **Traefik Configuration**: View main Traefik configurations. -- **View Middlewares**: Inspect active middlewares. -- **SSH Access**: Enter the server terminal (requires SSH key). ### Traefik @@ -40,8 +32,8 @@ Access and manage Traefik settings: - **Reload**: Refresh Traefik configuration. - **Watch Logs**: View Traefik logs. -- **View Config**: Inspect Traefik configuration. -- **Terminal Access**: Access Traefik via terminal. +- **Modify Enviroment Variables**: Add or modify Traefik environment variables , useful for DNS resolvers, challenges, and other Traefik configurations. +- **Enable Dashboard**: Enable or disable the Traefik dashboard (go to `http://:8080`). ### Space Management @@ -53,7 +45,7 @@ Manage server space by cleaning unused Docker images, volumes, and containers. 4. Clean Docker build cache & system. 5. Clean monitoring data. 6. Clean all. -7. Toggle to run a daily cleanup job. +7. Toggle to run a daily cleanup job (This will run every day at 12:00 AM, and will clean all the above). ### Updates @@ -67,4 +59,4 @@ Check for Dokploy updates and apply them as needed. When you check for updates, - All your services and domains will remain operational during the update, so it is safe to apply an update. - We are not responsible for any downtime caused by the update process. - We recommend updating if you are experiencing a bug or want to access new features. -- It is important to read the release notes before updating to avoid any unexpected issues. +- It is important to read the release notes before updating to avoid any unexpected issues or breaking changes. diff --git a/apps/docs/content/docs/core/server/profile.mdx b/apps/docs/content/docs/core/server/profile.mdx index c726639..f85fdeb 100644 --- a/apps/docs/content/docs/core/server/profile.mdx +++ b/apps/docs/content/docs/core/server/profile.mdx @@ -13,7 +13,8 @@ The Profile section allows you to customize your account settings. ## Two-Factor Authentication (2FA) -Enhance your account security by enabling two-factor authentication using the Google Authenticator app. +Enhance your account security by enabling two-factor authentication using the Google Authenticator app, activating +this option will make every time you log in to your account, you will be required to enter a code from the Google Authenticator app. ## API/CLI Access diff --git a/apps/docs/content/docs/core/server/s3-destination.mdx b/apps/docs/content/docs/core/server/s3-destination.mdx index ec68b97..26505f9 100644 --- a/apps/docs/content/docs/core/server/s3-destination.mdx +++ b/apps/docs/content/docs/core/server/s3-destination.mdx @@ -30,3 +30,99 @@ In order to create a new S3 Bucket, you need to fill the form. + +## Cloudflare Example R2 Bucket + +This is an example of a bucket that you can use to store your backups. + +1. Create a new bucket and any name you want. +2. Go to initial R2 Screen, and go to `Manager R2 API Tokens` and create a new token. +3. Set a Token Name +4. Set `Object Read & Write` Permission. +5. (Optional) Set Specify bucket, by default it will include all buckets. +6. Create the token. + +Now copy the following variables: + +- `Access Key` -> `Access Key (Dokploy)` = eg. `f3811c6d27415a9s6cv943b6743ad784` +- `Secret Key` -> `Secret Key (Dokploy)` = eg. `aa55ee40b4049e93b7252bf698408cc22a3c2856d2530s7c1cb7670e318f15e58` +- `Region` -> `Region (Dokploy)` = eg. `WNAM, ENAM, etc` it will depend on the region you are using. +- `Endpoint` -> `Endpoint (Dokploy)` = eg. `https://8ah554705io7842d54c499fbee1156c1c.r2.cloudflarestorage.com` +- `Bucket` -> `Bucket (Dokploy)` = eg. `dokploy-backups` use the name of the bucket you created. + +Test the connection and you should see a success message. + +## Backblaze B2 Example Bucket + +1. Create a new bucket and set any name you want. +2. Go to `Application Keys` and create a new key. +3. Set a Key Name. +4. Set the Allow Access to Bucket(s) to `All Buckets` or `Specific Buckets`. +4. Set type of access `Read & Write` Permission. + +Now copy the following variables: + +- `Access Key` -> `Access Key (Dokploy)` = eg. `002s6acf2639910000d000005` +- `Secret Key` -> `Secret Key (Dokploy)` = eg. `K00+rIsWqPMhmcgqcyOyb9bqby7pbpE` +- `Region` -> `Region (Dokploy)` = eg. `eu-central-003, us-east-005, us-west-002, us-west-001, us-west-004, etc` it will depend on the region you are using. +- `Endpoint` -> `Endpoint (Dokploy)` = eg. `https://s3.us-west-002.backblazeb2.com` you will find this endpoint in the Bucket Card at the Home Page. +- `Bucket` -> `Bucket (Dokploy)` = eg. `dokploy-backups` use the name of the bucket you created. + +Test the connection and you should see a success message. + +## S3 Example Bucket + +1. Create a new bucket and set any name you want. +2. Search for `IAM` in the search bar. +3. Click on `Policies` in the left menu. +4. Click on `Create Policy`. +5. Select `JSON` and paste the following policy: +Make sure to replace the bucket name with your bucket name. +```json +{ + "Version": "2012-10-17", + "Statement": [ + { + "Sid": "AllowListBucket", + "Effect": "Allow", + "Action": "s3:ListBucket", + "Resource": "arn:aws:s3:::bucket-name" + }, + { + "Sid": "AllowBucketObjectActions", + "Effect": "Allow", + "Action": [ + "s3:GetObject", + "s3:PutObject", + "s3:DeleteObject" + ], + // Make sure to set the name of your bucket + "Resource": "arn:aws:s3:::bucket-name/*" + } + ] +} +``` +6. Click on `Review Policy`. +7. Assign a name to the policy. +8. Click on `Create Policy`. +9. Click on User Group and assign a Name. +10. Click on `Add User to Group`. +11. Add the user you want to assign to the group. +12. In the `Attached Policies` section, filter by type `Customer Managed` and select the policy you created. +13. Click on `Attach Policy`. +14. Go to `Users` and select the user you've assigned to the group. +15. Go to Security Credentials. +16. Click on `Create Access Key`. +17. Select `Programmatic Access`. +18. Click on `Create New Access Key`. + +Now copy the following variables: + +- `Access Key` -> `Access Key (Dokploy)` = eg. `AK2AV244NFLS5JTUZ554` +- `Secret Key` -> `Secret Key (Dokploy)` = eg. `I0GWCo9fSGOr7z6Lh+NvHmSsaE+62Vwk2ua2CEwR` +- `Bucket` -> `Bucket (Dokploy)` = eg. `dokploy-backups` use the name of the bucket you created. +- `Region` -> `Region (Dokploy)` = eg. `us-east-1, us-west-2, etc` it will depend on the region you are using. +- `Endpoint` -> `Endpoint (Dokploy) (Optional)` = eg. `https://.s3..amazonaws.com` you will find this endpoint in the Bucket Card at the Home Page. + + +Test the connection and you should see a success message. \ No newline at end of file diff --git a/apps/docs/content/docs/core/ssh-keys/overview.mdx b/apps/docs/content/docs/core/ssh-keys/overview.mdx new file mode 100644 index 0000000..7cf9892 --- /dev/null +++ b/apps/docs/content/docs/core/ssh-keys/overview.mdx @@ -0,0 +1,30 @@ +--- +title: Overview +description: 'Configure your SSH keys to access your servers or clone Private Repositories.' +--- + +import { Callout } from 'fumadocs-ui/components/callout'; + +Dokploy provides a section exclusively for SSH keys, allowing you to manage your SSH keys in a centralized location. + +SSH Keys can be used for two purposes: + +- **Private Repositories**: You can use SSH Keys, to access to private repositories, this is only for `Git` provider +in your application or docker compose. +- **Multi Server**: You can use SSH Keys, to access remotely to your servers via SSH. + +To create a SSH Key, is a very easy process, just click on `Create SSH Key` + +We offer two SSH Keys Generation types: + +1. **RSA Key**: This is the most commonly used key type, and generates a 2048-bit RSA key. +2. **Ed25519 Key**: This is a newer key type that generates a 256-bit Ed25519 key. + + + You can also create or paste your own SSH Key, you can edit the `Private Key` and `Public Key` fields without restrictions, + make sure to use the correct format for the key type you are using. + + + + Once you create a SSH Key you will not be able to read the `Private Key` anymore. + \ No newline at end of file diff --git a/apps/docs/content/docs/core/users/permissions.mdx b/apps/docs/content/docs/core/users/permissions.mdx new file mode 100644 index 0000000..022b16e --- /dev/null +++ b/apps/docs/content/docs/core/users/permissions.mdx @@ -0,0 +1,26 @@ +--- +title: Permissions +description: 'Add permissions to your users to manage your applications and services.' +--- + +Manage user roles and permissions within Dokploy. Note that only one admin role is allowed per instance. + +## Permissions + +Dokploy offers multiple permissions to manage your users effectively: + +- **Create Projects**: Allows the user to create new projects. +- **Create Services**: Allows the user to create new applications or databases. +- **Access Traefik Files Tab**: Allows the user to access the Traefik files tab. +- **Delete Projects**: Allows the user to delete projects. +- **Delete Services**: Allows the user to delete services. +- **Access Docker Tab**: Allows the user to access the Docker tab. +- **Access API/CLI**: Allows the user to access the API/CLI, including the Swagger route. +- **Access to Git Providers**: Allows the user to access the Git Providers. +- **Access to SSH Keys**: Allows the user to access the SSH Keys. + +You can also grant permissions to specific users for accessing particular projects or services. + +### Project Permissions + +Based on your projects and services, you can assign permissions to specific users to give them access to particular projects or services.