Skip to content

Commit b91067d

Browse files
authored
Merge pull request #2126 from Dokploy/canary
🚀 Release v0.23.7
2 parents 335a16b + 5c73ced commit b91067d

67 files changed

Lines changed: 6183 additions & 164 deletions

Some content is hidden

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

GUIDES.md

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,28 +16,29 @@ Here's how to install docker on different operating systems:
1616
### Ubuntu
1717

1818
```bash
19+
# Uninstall old versions
20+
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
21+
1922
# Update package index
2023
sudo apt-get update
2124

2225
# Install prerequisites
23-
sudo apt-get install \
24-
apt-transport-https \
25-
ca-certificates \
26-
curl \
27-
gnupg \
28-
lsb-release
26+
sudo apt-get install ca-certificates curl
27+
sudo install -m 0755 -d /etc/apt/keyrings
2928

3029
# Add Docker's official GPG key
31-
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
30+
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
31+
sudo chmod a+r /etc/apt/keyrings/docker.asc
3232

33-
# Set up stable repository
33+
# Add the repository to Apt sources
3434
echo \
35-
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
36-
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
35+
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
36+
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
37+
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
3738

3839
# Install Docker Engine
3940
sudo apt-get update
40-
sudo apt-get install docker-ce docker-ce-cli containerd.io
41+
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
4142
```
4243

4344
## Windows

LICENSE.MD

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Core License (Apache License 2.0)
44

5-
Copyright 2024 Mauricio Siu.
5+
Copyright 2025 Mauricio Siu.
66

77
Licensed under the Apache License, Version 2.0 (the "License");
88
you may not use this file except in compliance with the License.

README.md

Lines changed: 8 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -62,46 +62,26 @@ For detailed documentation, visit [docs.dokploy.com](https://docs.dokploy.com).
6262
### Hero Sponsors 🎖
6363

6464
<div style="display: flex; align-items: center; gap: 20px;">
65-
<a href="https://www.hostinger.com/vps-hosting?ref=dokploy" target="_blank" style="display: inline-block; margin-right: 10px;">
66-
<img src=".github/sponsors/hostinger.jpg" alt="Hostinger" height="50"/>
67-
</a>
68-
<a href="https://www.lxaer.com/?ref=dokploy" target="_blank" style="display: inline-block; margin-right: 10px;">
69-
<img src=".github/sponsors/lxaer.png" alt="LX Aer" height="50"/>
70-
</a>
71-
<a href="https://mandarin3d.com/?ref=dokploy" target="_blank" style="display: inline-block;">
72-
<img src=".github/sponsors/mandarin.png" alt="Mandarin" height="50"/>
73-
</a>
74-
<a href="https://lightnode.com/?ref=dokploy" target="_blank" style="display: inline-block;">
75-
<img src=".github/sponsors/light-node.webp" alt="Lightnode" height="70"/>
76-
</a>
65+
<a href="https://www.hostinger.com/vps-hosting?ref=dokploy" target="_blank" style="display: inline-block; margin-right: 10px;"><img src=".github/sponsors/hostinger.jpg" alt="Hostinger" height="50"/></a>
66+
<a href="https://www.lxaer.com/?ref=dokploy" target="_blank" style="display: inline-block; margin-right: 10px;"><img src=".github/sponsors/lxaer.png" alt="LX Aer" height="50"/></a>
67+
<a href="https://mandarin3d.com/?ref=dokploy" target="_blank" style="display: inline-block;"><img src=".github/sponsors/mandarin.png" alt="Mandarin" height="50"/></a>
68+
<a href="https://lightnode.com/?ref=dokploy" target="_blank" style="display: inline-block;"><img src=".github/sponsors/light-node.webp" alt="Lightnode" height="70"/></a>
7769

78-
7970
</div>
8071

8172
### Premium Supporters 🥇
8273

8374
<div style="display: flex; align-items: center; gap: 20px;">
84-
<a href="https://supafort.com/?ref=dokploy" target="_blank" style="display: inline-block; margin-right: 20px;">
85-
<img src="https://supafort.com/build/q-4Ht4rBZR.webp" alt="Supafort.com" height="50"/>
86-
</a>
87-
88-
<a href="https://agentdock.ai/?ref=dokploy" target="_blank" style="display: inline-block; margin-right: 50px;">
89-
<img src=".github/sponsors/agentdock.png" alt="agentdock.ai" height="70"/>
90-
</a>
75+
<a href="https://supafort.com/?ref=dokploy" target="_blank" style="display: inline-block; margin-right: 20px;"><img src="https://supafort.com/build/q-4Ht4rBZR.webp" alt="Supafort.com" height="50"/></a>
76+
<a href="https://agentdock.ai/?ref=dokploy" target="_blank" style="display: inline-block; margin-right: 50px;"><img src=".github/sponsors/agentdock.png" alt="agentdock.ai" height="70"/></a>
9177

9278
</div>
9379

9480
### Elite Contributors 🥈
9581

9682
<div style="display: flex; align-items: center; gap: 20px;">
97-
98-
<a href="https://americancloud.com/?ref=dokploy" target="_blank" style="display: inline-block; padding: 10px; border-radius: 10px;">
99-
<img src=".github/sponsors/american-cloud.png" alt="AmericanCloud" height="70"/>
100-
</a>
101-
102-
<a href="https://tolgee.io/?utm_source=github_dokploy&utm_medium=banner&utm_campaign=dokploy" target="_blank" style="display: inline-block; margin-right: 10px;">
103-
<img src="https://dokploy.com/tolgee-logo.png" alt="Tolgee" height="80"/>
104-
</a>
83+
<a href="https://americancloud.com/?ref=dokploy" target="_blank" style="display: inline-block; padding: 10px; border-radius: 10px;"><img src=".github/sponsors/american-cloud.png" alt="AmericanCloud" height="70"/></a>
84+
<a href="https://tolgee.io/?utm_source=github_dokploy&utm_medium=banner&utm_campaign=dokploy" target="_blank" style="display: inline-block; margin-right: 10px;"><img src="https://dokploy.com/tolgee-logo.png" alt="Tolgee" height="80"/></a>
10585

10686
</div>
10787
<!-- Elite Contributors 🥈 -->

apps/dokploy/LICENSE.MD

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

apps/dokploy/components/dashboard/application/advanced/cluster/modify-swarm-settings.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ const createStringToJSONSchema = (schema: z.ZodTypeAny) => {
130130
}
131131
try {
132132
return JSON.parse(str);
133-
} catch (_e) {
133+
} catch {
134134
ctx.addIssue({ code: "custom", message: "Invalid JSON format" });
135135
return z.NEVER;
136136
}

apps/dokploy/components/dashboard/application/advanced/import/show-import.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ export const ShowImport = ({ composeId }: Props) => {
107107
composeId,
108108
});
109109
setShowModal(false);
110-
} catch (_error) {
110+
} catch {
111111
toast.error("Error importing template");
112112
}
113113
};
@@ -126,7 +126,7 @@ export const ShowImport = ({ composeId }: Props) => {
126126
});
127127
setTemplateInfo(result);
128128
setShowModal(true);
129-
} catch (_error) {
129+
} catch {
130130
toast.error("Error processing template");
131131
}
132132
};

apps/dokploy/components/dashboard/application/advanced/ports/handle-ports.tsx

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ import { z } from "zod";
3535

3636
const AddPortSchema = z.object({
3737
publishedPort: z.number().int().min(1).max(65535),
38+
publishMode: z.enum(["ingress", "host"], {
39+
required_error: "Publish mode is required",
40+
}),
3841
targetPort: z.number().int().min(1).max(65535),
3942
protocol: z.enum(["tcp", "udp"], {
4043
required_error: "Protocol is required",
@@ -80,6 +83,7 @@ export const HandlePorts = ({
8083
useEffect(() => {
8184
form.reset({
8285
publishedPort: data?.publishedPort ?? 0,
86+
publishMode: data?.publishMode ?? "ingress",
8387
targetPort: data?.targetPort ?? 0,
8488
protocol: data?.protocol ?? "tcp",
8589
});
@@ -165,6 +169,32 @@ export const HandlePorts = ({
165169
</FormItem>
166170
)}
167171
/>
172+
<FormField
173+
control={form.control}
174+
name="publishMode"
175+
render={({ field }) => {
176+
return (
177+
<FormItem className="md:col-span-2">
178+
<FormLabel>Published Port Mode</FormLabel>
179+
<Select
180+
onValueChange={field.onChange}
181+
value={field.value}
182+
>
183+
<FormControl>
184+
<SelectTrigger>
185+
<SelectValue placeholder="Select a publish mode for the port" />
186+
</SelectTrigger>
187+
</FormControl>
188+
<SelectContent>
189+
<SelectItem value={"ingress"}>Ingress</SelectItem>
190+
<SelectItem value={"host"}>Host</SelectItem>
191+
</SelectContent>
192+
</Select>
193+
<FormMessage />
194+
</FormItem>
195+
);
196+
}}
197+
/>
168198
<FormField
169199
control={form.control}
170200
name="targetPort"

apps/dokploy/components/dashboard/application/advanced/ports/show-port.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,21 @@ export const ShowPorts = ({ applicationId }: Props) => {
6060
{data?.ports.map((port) => (
6161
<div key={port.portId}>
6262
<div className="flex w-full flex-col sm:flex-row sm:items-center justify-between gap-4 sm:gap-10 border rounded-lg p-4">
63-
<div className="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 flex-col gap-4 sm:gap-8">
63+
<div className="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 flex-col gap-4 sm:gap-8">
6464
<div className="flex flex-col gap-1">
6565
<span className="font-medium">Published Port</span>
6666
<span className="text-sm text-muted-foreground">
6767
{port.publishedPort}
6868
</span>
6969
</div>
7070
<div className="flex flex-col gap-1">
71-
<span className="font-medium"> Target Port</span>
71+
<span className="font-medium">Published Port Mode</span>
72+
<span className="text-sm text-muted-foreground">
73+
{port?.publishMode?.toUpperCase()}
74+
</span>
75+
</div>
76+
<div className="flex flex-col gap-1">
77+
<span className="font-medium">Target Port</span>
7278
<span className="text-sm text-muted-foreground">
7379
{port.targetPort}
7480
</span>

apps/dokploy/components/dashboard/compose/general/compose-file-editor.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ export const ComposeFileEditor = ({ composeId }: Props) => {
7777
composeId,
7878
});
7979
})
80-
.catch((_e) => {
80+
.catch(() => {
8181
toast.error("Error updating the Compose config");
8282
});
8383
};

apps/dokploy/components/dashboard/compose/general/show-converted-compose.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ export const ShowConvertedCompose = ({ composeId }: Props) => {
4040
.then(() => {
4141
refetch();
4242
})
43-
.catch((_err) => {});
43+
.catch(() => {});
4444
}
4545
}, [isOpen]);
4646

0 commit comments

Comments
 (0)