Skip to content

Commit 520060d

Browse files
author
Mauricio Siu
committed
Merge branch 'main' into docs-add-cloudflare-origin-certs
2 parents 31784df + f865b00 commit 520060d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+1661
-4988
lines changed

apps/docs/app/layout.config.tsx

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
import type { BaseLayoutProps } from "fumadocs-ui/layouts/shared";
2-
import { Github, GlobeIcon, HeartIcon, Rss } from "lucide-react";
2+
import {
3+
Github,
4+
GlobeIcon,
5+
HeartIcon,
6+
Rss,
7+
LogIn,
8+
UserPlus,
9+
} from "lucide-react";
310
import Link from "next/link";
411
/**
512
* Shared layout configurations
@@ -45,6 +52,18 @@ export const baseOptions: BaseLayoutProps = {
4552
),
4653
},
4754
links: [
55+
{
56+
text: "Login",
57+
url: "https://app.dokploy.com/",
58+
active: "nested-url",
59+
icon: <LogIn />,
60+
},
61+
{
62+
text: "Sign Up",
63+
url: "https://app.dokploy.com/register",
64+
active: "nested-url",
65+
icon: <UserPlus />,
66+
},
4867
{
4968
text: "Website",
5069
url: "https://dokploy.com",

apps/docs/content/docs/core/cluster.mdx

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -38,24 +38,20 @@ If you choose the second option, we will proceed to configure the different serv
3838

3939
To start, we need to configure a Docker registry, as when deploying an application, you need a registry to deploy and download the application image on the other servers.
4040

41-
We offer two ways to configure a registry:
42-
43-
1. **External Registry**: Use any registry you want.
44-
2. **Self-Hosted Registry**: We create and configure a self-hosted registry for you.
45-
4641
### External Registry
4742

48-
You can use any registry, such as Docker Hub, DigitalOcean Spaces, ECR, or your choice. Make sure to enter the correct credentials and test the connection before adding the registry.
49-
50-
### Self-Hosted Registry
43+
You can use any external registry of your choice. Here are some popular options:
5144

52-
We will ask you for three things:
45+
1. **Docker Hub** - Free tier available, easy to set up
46+
2. **GitHub Container Registry (ghcr.io)** - Free for public repositories
47+
3. **DigitalOcean Container Registry** - Simple setup with good integration
48+
4. **Amazon ECR** - AWS's managed container registry
49+
5. **Google Container Registry** - Google Cloud's managed registry
50+
6. **Azure Container Registry** - Microsoft's managed registry
5351

54-
1. A user.
55-
2. A password.
56-
3. A domain. Ensure this domain is pointing to the dokploy VPS.
52+
Make sure to enter the correct credentials and test the connection before adding the registry to your cluster configuration.
5753

58-
Once set up, the Cluster section will be unlocked.
54+
Once configured, the Cluster section will be unlocked.
5955

6056
## Understanding Docker Swarm
6157

apps/docs/content/docs/core/docker-compose/index.mdx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,8 @@ volumes:
7373
- "../files/my-configs:/etc/my-app/config"
7474
```
7575
76+
**Important:** If you need to use files from your repository (configuration files, scripts, etc.), you must move them to Dokploy's File Mounts (via Advanced → Mounts) instead of mounting them directly from the repository. When using AutoDeploy, Dokploy performs a `git clone` on each deployment, which clears the repository directory. Mounting files directly from your repository using relative paths (e.g., `./` or `./config/file.conf`) will cause them to be lost or empty in subsequent deployments. See the [Troubleshooting guide](/docs/core/troubleshooting#using-files-from-your-repository) for more details.
77+
7678
</Callout>
7779

7880
## Keyboard Shortcuts

apps/docs/content/docs/core/manual-installation.mdx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ install_dokploy() {
143143
--mount type=volume,source=redis-data-volume,target=/data \
144144
redis:7
145145

146-
docker pull traefik:v3.5.0
146+
docker pull traefik:v3.6.1
147147
docker pull dokploy/dokploy:latest
148148

149149
# Installation
@@ -167,11 +167,11 @@ install_dokploy() {
167167
--restart always \
168168
-v /etc/dokploy/traefik/traefik.yml:/etc/traefik/traefik.yml \
169169
-v /etc/dokploy/traefik/dynamic:/etc/dokploy/traefik/dynamic \
170-
-v /var/run/docker.sock:/var/run/docker.sock \
170+
-v /var/run/docker.sock:/var/run/docker.sock:ro \
171171
-p 80:80/tcp \
172172
-p 443:443/tcp \
173173
-p 443:443/udp \
174-
traefik:v3.5.0
174+
traefik:v3.6.1
175175

176176
docker network connect dokploy-network dokploy-traefik
177177

@@ -183,11 +183,11 @@ install_dokploy() {
183183
# --network dokploy-network \
184184
# --mount type=bind,source=/etc/dokploy/traefik/traefik.yml,target=/etc/traefik/traefik.yml \
185185
# --mount type=bind,source=/etc/dokploy/traefik/dynamic,target=/etc/dokploy/traefik/dynamic \
186-
# --mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock \
186+
# --mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock,readonly \
187187
# --publish mode=host,published=443,target=443 \
188188
# --publish mode=host,published=80,target=80 \
189189
# --publish mode=host,published=443,target=443,protocol=udp \
190-
# traefik:v3.5.0
190+
# traefik:v3.6.1
191191

192192
GREEN="\033[0;32m"
193193
YELLOW="\033[1;33m"

apps/docs/content/docs/core/multi-server/deployments.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,10 @@ The server setup process prepares the necessary environment for securely and eff
1616
Root access to the server is required. We currently do not support non-root deployments.
1717
</Callout>
1818

19+
<Callout type="warning">
20+
If your remote server is configured with a different shell (other than bash), you must configure bash as the default shell, as Dokploy has been developed and tested with bash.
21+
</Callout>
22+
1923
<ImageZoom
2024
src="/assets/images/server-deploy.png"
2125
alt="Multi-Server Setup"

apps/docs/content/docs/core/multi-server/instructions.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ Multi server allows you to deploy your apps remotely to different servers withou
1111

1212
1. To install Dokploy UI, follow the [installation guide](en/docs/core/get-started/installation).
1313

14+
<Callout type="warning">
15+
If your remote server is configured with a different shell (other than bash), you must configure bash as the default shell, as Dokploy has been developed and tested with bash.
16+
</Callout>
17+
1418
2. Create an SSH key by going to `/dashboard/settings/ssh-keys` and add a new key. Be sure to copy the public key.
1519

1620
<ImageZoom

apps/docs/content/docs/core/troubleshooting.mdx

Lines changed: 48 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,46 @@ volumes:
5454
- "../files/my-configs:/etc/my-app/config"
5555
```
5656
57+
### Using Files from Your Repository
58+
59+
<Callout type="warning">
60+
If you need to use files from your repository (e.g., configuration files, scripts, or directories), you **must** move them to Dokploy's file mounts and reference them manually using the Dokploy interface. This is because when using AutoDeploy, Dokploy performs a `git clone` operation on each deployment, which clears the repository directory. If you mount files directly from your repository using relative paths like `./` or `./docker/config/odoo.conf`, these files will be lost or empty in subsequent deployments, even though the first deployment may work correctly.
61+
</Callout>
62+
63+
**Why this happens:**
64+
- On the first deployment, the files exist and are mounted correctly
65+
- On subsequent deployments, Dokploy cleans the directory and performs a fresh `git clone`
66+
- Docker loses the reference to the files that were in the filesystem, and the new files have a new reference
67+
- This causes mounted directories and files to be empty or missing inside the container
68+
69+
**Solution:**
70+
1. Go to **Advanced** → **Mounts** in your Docker Compose application
71+
2. Create a new **File Mount** for each file or directory you need from your repository
72+
3. Copy the content from your repository files into the File Mount content field
73+
4. Specify the file path for your configuration
74+
5. Reference the file mount in your `docker-compose.yml` using the `../files/` path:
75+
76+
```yaml
77+
volumes:
78+
- "../files/my-config.json:/etc/my-app/config" ✅
79+
- "../files/my-directory:/path/in/container" ✅
80+
```
81+
82+
**Example:**
83+
Instead of mounting directly from your repository:
84+
```yaml
85+
volumes:
86+
- ./:/mnt/extra-addons/va_subscription_18 ❌
87+
- ./docker/config/odoo.conf:/etc/odoo/odoo.conf ❌
88+
```
89+
90+
Use Dokploy's file mounts:
91+
```yaml
92+
volumes:
93+
- ../files/va_subscription_18:/mnt/extra-addons/va_subscription_18 ✅
94+
- ../files/odoo.conf:/etc/odoo/odoo.conf ✅
95+
```
96+
5797
## Logs Not Loading When Deploying to a Remote Server?
5898

5999
There are a few potential reasons for this:
@@ -204,6 +244,10 @@ volumes:
204244
- ../files/my-config.json:/etc/my-app/config
205245
```
206246

247+
<Callout type="info">
248+
**Important for AutoDeploy users:** If you have configuration files or directories in your repository that you need to mount into your containers, you must copy their content to Dokploy's File Mounts (via Advanced → Mounts) instead of mounting them directly from the repository. This ensures the files persist across deployments, as the repository directory is cleaned and re-cloned on each AutoDeploy.
249+
</Callout>
250+
207251

208252
## Failed to initialize Docker Swarm
209253

@@ -428,11 +472,11 @@ docker run -d \
428472
--restart always \
429473
-v /etc/dokploy/traefik/traefik.yml:/etc/traefik/traefik.yml \
430474
-v /etc/dokploy/traefik/dynamic:/etc/dokploy/traefik/dynamic \
431-
-v /var/run/docker.sock:/var/run/docker.sock \
475+
-v /var/run/docker.sock:/var/run/docker.sock:ro \
432476
-p 80:80/tcp \
433477
-p 443:443/tcp \
434478
-p 443:443/udp \
435-
traefik:v3.5.0
479+
traefik:v3.6.1
436480

437481
docker network connect dokploy-network dokploy-traefik
438482

@@ -445,11 +489,11 @@ docker run -d \
445489
--restart always \
446490
-v /etc/dokploy/traefik/traefik.yml:/etc/traefik/traefik.yml \
447491
-v /etc/dokploy/traefik/dynamic:/etc/dokploy/traefik/dynamic \
448-
-v /var/run/docker.sock:/var/run/docker.sock \
492+
-v /var/run/docker.sock:/var/run/docker.sock:ro \
449493
-p 80:80/tcp \
450494
-p 443:443/tcp \
451495
-p 443:443/udp \
452-
traefik:v3.5.0
496+
traefik:v3.6.1
453497
```
454498

455499
Remove the dokploy service:

apps/website/README.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
Main Landing Page of Dokploy
44

5+
## Development
6+
57
Run development server:
68

79
```bash
@@ -14,9 +16,20 @@ yarn dev
1416

1517
Open http://localhost:3000 with your browser to see the result.
1618

19+
## Environment Variables
20+
21+
### Required for Contact Form
22+
```
23+
RESEND_API_KEY=your_resend_api_key_here
24+
```
1725

18-
For Blog Page, you can use the following command to generate the static pages:
26+
### Required for HubSpot Integration (Sales Forms)
27+
```
28+
HUBSPOT_PORTAL_ID=147033433
29+
HUBSPOT_FORM_GUID=0d788925-ef54-4fda-9b76-741fb5877056
30+
```
1931

32+
### Required for Blog Page
2033
```
2134
GHOST_URL=""
2235
GHOST_KEY=""

apps/website/app/[locale]/[...rest]/page.tsx

Lines changed: 0 additions & 5 deletions
This file was deleted.

apps/website/app/[locale]/api/og/route.ts

Lines changed: 0 additions & 67 deletions
This file was deleted.

0 commit comments

Comments
 (0)