From 463fcd17e73ece29eb9af0cca79432eef1fe7755 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Sun, 1 Sep 2024 23:20:47 -0600 Subject: [PATCH] refactor(docs): add information about new providers --- .../docs/core/application/providers.mdx | 34 ++++++++++++-- .../docs/core/docker-compose/domains.mdx | 45 +++++++------------ .../docs/core/docker-compose/providers.mdx | 37 ++++++++++++--- .../generic/save-gitlab-provider-compose.tsx | 2 +- 4 files changed, 77 insertions(+), 41 deletions(-) diff --git a/apps/docs/content/docs/core/application/providers.mdx b/apps/docs/content/docs/core/application/providers.mdx index 83b9a2540..4550be0ad 100644 --- a/apps/docs/content/docs/core/application/providers.mdx +++ b/apps/docs/content/docs/core/application/providers.mdx @@ -6,14 +6,30 @@ description: Learn how to use providers in your application. Dokploy offers several deployment methods, streamlining the process whether you're utilizing GitHub, any Git provider, Docker, or automated deployments. - GitHub +- Gitlab +- Bitbucket - Git (Any Git Provider) - Docker ## GitHub -Deploying via GitHub is straightforward: +Deploying via GitHub: -1. Configure your GitHub repository in the `/dashboard/settings/server`. +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. ## Git @@ -27,11 +43,21 @@ For deployments from any Git repository, whether public or private, you can use For private repositories, authenticate using SSH. We provide a lock icon to generate an SSH key. - + You can then copy the SSH key and paste it into the settings of your account. - + This enables you to pull repositories from your private repository, a method consistent across nearly all providers. diff --git a/apps/docs/content/docs/core/docker-compose/domains.mdx b/apps/docs/content/docs/core/docker-compose/domains.mdx index 97d11119d..82534d0d2 100644 --- a/apps/docs/content/docs/core/docker-compose/domains.mdx +++ b/apps/docs/content/docs/core/docker-compose/domains.mdx @@ -10,12 +10,20 @@ Key Steps: 1. Add the service to the `dokploy-network`. 2. Use Traefik labels to configure routing. +import { Callout } from "fumadocs-ui/components/callout"; + + + Since v0.7.0 Dokploy support domains natively. This means that you can + configure your domain directly in the Dokploy UI, without doing the rest of + the steps. + + Example Scenario Let's consider an application with three components: a frontend, a backend, and a database. We'll start with a basic Docker Compose file and then enhance it with domain configuration. ```yaml -version: '3.8' +version: "3.8" services: frontend: @@ -60,7 +68,7 @@ volumes: First, we'll add the dokploy-network to our services: ```yaml -version: '3.8' +version: "3.8" services: frontend: @@ -90,28 +98,8 @@ Step 2: Configuring Traefik Labels Now, let's add Traefik labels to route domains to our services. We'll focus on the frontend and backend services: -{/* It is necessary to add these labels: - -1. `traefik.enable=true` -This label tells Traefik that this service should be routed by Traefik. -2. `traefik.http.routers..rule=Host('your-domain.dokploy.com')` -This label tells Traefik that the domain to be used is `your-domain.dokploy.com` -3. `traefik.http.routers..entrypoints=web` -This label tells Traefik that the service should be accessible via the `http` protocol. -4. `traefik.http.services..loadbalancer.server.port=3000` -This label tells Traefik that the port to be used is `3000` - -Note: For loadbalancer.server.port, ensure you assign the port that your service is using. It's important to note that you do not need to expose the port like this: - -Nota: en el loadbalancer.server.port asegurate de asignar el puerto que tu servicio esta utilizando, y alcaramos no es necesario que expongas el puerto de esta manera - -'3000:3000' esto es incorrecto, unicamente debes de asignar el puerto que tu servicio esta utilizando, en este caso `3000` - -asegurate de crear los registros `A` que apunten a tu dominio, esto hazlo desde tu DNS provider. */} - - ```yaml -version: '3.8' +version: "3.8" services: frontend: @@ -165,21 +153,18 @@ networks: Understanding Traefik Labels - -1. `traefik.enable=true` Enables Traefik routing for the service. +1. `traefik.enable=true` Enables Traefik routing for the service. 2. `traefik.http.routers..rule=Host('your-domain.dokploy.com')` Specifies the domain for the service -3. `traefik.http.routers..entrypoints=web` Sets the service to be accessible via HTTP. +3. `traefik.http.routers..entrypoints=web` Sets the service to be accessible via HTTP. 4. `traefik.http.services..loadbalancer.server.port=3000` Specifies the port your service is using internally. -**Note**: Replace `` with a unique identifier for each service (e.g., frontend-app, backend-app, etc.). - +**Note**: Replace `` with a unique identifier for each service (e.g., frontend-app, backend-app, etc.). ## Important Considerations 1. **Port Exposure**: Use `expose` instead of `ports` to expose ports to the host machine. This ensures that the ports are not exposed to the host machine. 2. **DNS Configuration**: Ensure you create `A` records pointing to your domain in your DNS Provider Settings. -3. **HTTPS**: For HTTPS, you can use Let's Encrypt or other SSL/TLS certificates. - +3. **HTTPS**: For HTTPS, you can use Let's Encrypt or other SSL/TLS certificates. ## Deployment diff --git a/apps/docs/content/docs/core/docker-compose/providers.mdx b/apps/docs/content/docs/core/docker-compose/providers.mdx index 09cecc8f7..f091ec36c 100644 --- a/apps/docs/content/docs/core/docker-compose/providers.mdx +++ b/apps/docs/content/docs/core/docker-compose/providers.mdx @@ -6,14 +6,30 @@ description: "Learn how to use Docker Compose with Dokploy" Dokploy offers several deployment methods, streamlining the process whether you're utilizing GitHub, any Git provider, Raw, or automated deployments. - GitHub +- Gitlab +- Bitbucket - Git (Any Git Provider) - Raw ## GitHub -Deploying via GitHub is straightforward: +Deploying via GitHub: -1. Configure your GitHub repository in the `/dashboard/settings/server`. +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. ## Git @@ -27,15 +43,24 @@ For deployments from any Git repository, whether public or private, you can use For private repositories, authenticate using SSH. We provide a lock icon to generate an SSH key. - + You can then copy the SSH key and paste it into the settings of your account. - + This enables you to pull repositories from your private repository, a method consistent across nearly all providers. - ## Raw -You specify a docker compose file directly in the code editor and trigger a deployment. \ No newline at end of file +You specify a docker compose file directly in the code editor and trigger a deployment. diff --git a/apps/dokploy/components/dashboard/compose/general/generic/save-gitlab-provider-compose.tsx b/apps/dokploy/components/dashboard/compose/general/generic/save-gitlab-provider-compose.tsx index 4aac89207..5461f2e72 100644 --- a/apps/dokploy/components/dashboard/compose/general/generic/save-gitlab-provider-compose.tsx +++ b/apps/dokploy/components/dashboard/compose/general/generic/save-gitlab-provider-compose.tsx @@ -104,7 +104,7 @@ export const SaveGitlabProviderCompose = ({ composeId }: Props) => { { owner: repository?.owner, repo: repository?.repo, - id: repository?.id, + id: repository?.id || 0, gitlabId: gitlabId, }, {