Skip to content

Commit b296b6b

Browse files
authored
Merge pull request #772 from Dokploy/canary
v0.13.0
2 parents 5c87214 + 37fa139 commit b296b6b

Some content is hidden

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

61 files changed

+1443
-109
lines changed

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 42 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: Bug Report
22
description: Create a bug report
3-
labels: ['bug']
3+
labels: ["bug"]
44
body:
55
- type: markdown
66
attributes:
@@ -11,18 +11,27 @@ body:
1111
- type: textarea
1212
attributes:
1313
label: To Reproduce
14-
description: A step-by-step description of how to reproduce the issue, or a link to the reproducible repository.
14+
description: |
15+
A detailed, step-by-step description of how to reproduce the issue is required.
16+
Please ensure your report includes clear instructions using numbered lists.
17+
18+
If possible, provide a link to a repository or project where the issue can be reproduced.
1519
placeholder: |
1620
1. Create a application
1721
2. Click X
1822
3. Y will happen
23+
24+
Make sure to:
25+
- Use numbered lists to outline steps clearly.
26+
- Include all relevant commands and configurations.
27+
- Provide a link to a reproducible repository if applicable.
1928
validations:
2029
required: true
2130
- type: textarea
2231
attributes:
2332
label: Current vs. Expected behavior
2433
description: A clear and concise description of what the bug is, and what you expected to happen.
25-
placeholder: 'Following the steps from the previous section, I expected A to happen, but I observed B instead'
34+
placeholder: "Following the steps from the previous section, I expected A to happen, but I observed B instead"
2635
validations:
2736
required: true
2837
- type: textarea
@@ -45,12 +54,23 @@ body:
4554
label: Which area(s) are affected? (Select all that apply)
4655
multiple: true
4756
options:
48-
- 'Installation'
49-
- 'Application'
50-
- 'Databases'
51-
- 'Docker Compose'
52-
- 'Traefik'
53-
- 'Docker'
57+
- "Installation"
58+
- "Application"
59+
- "Databases"
60+
- "Docker Compose"
61+
- "Traefik"
62+
- "Docker"
63+
- "Remote server"
64+
- "Local Development"
65+
validations:
66+
required: true
67+
- type: dropdown
68+
attributes:
69+
label: Are you deploying the applications where Dokploy is installed or on a remote server?
70+
options:
71+
- "Same server where Dokploy is installed"
72+
- "Remote server"
73+
- "Both"
5474
validations:
5575
required: true
5676
- type: textarea
@@ -59,4 +79,16 @@ body:
5979
description: |
6080
Any extra information that might help us investigate.
6181
placeholder: |
62-
I tested on a DigitalOcean VPS with Ubuntu 20.04 and Docker version 20.10.12.
82+
I tested on a DigitalOcean VPS with Ubuntu 20.04 and Docker version 20.10.12.
83+
84+
- type: dropdown
85+
attributes:
86+
label: Will you send a PR to fix it?
87+
description: Let us know if you are planning to submit a pull request to address this issue.
88+
89+
options:
90+
- "Yes"
91+
- "No"
92+
- "Maybe, need help"
93+
validations:
94+
required: true

.github/ISSUE_TEMPLATE/feature-request.yml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: Feature Request
22
description: Suggest a new feature or improvement to the project
3-
labels: ['enhancement']
3+
labels: ["enhancement"]
44
body:
55
- type: textarea
66
attributes:
@@ -30,4 +30,15 @@ body:
3030
label: Additional context
3131
description: Add any other context or screenshots about the feature request here.
3232
validations:
33-
required: false
33+
required: false
34+
35+
- type: dropdown
36+
attributes:
37+
label: Will you send a PR to implement it?
38+
description: Let us know if you are planning to submit a pull request to implement this feature.
39+
options:
40+
- "Yes"
41+
- "No"
42+
- "Maybe, need help"
43+
validations:
44+
required: true

.github/sponsors/startupfame.png

12.9 KB
Loading

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,8 @@ For detailed documentation, visit [docs.dokploy.com](https://docs.dokploy.com).
8787

8888
<div style="display: flex; gap: 30px; flex-wrap: wrap;">
8989
<a href="https://lightspeed.run/?ref=dokploy"><img src="https://github.com/lightspeedrun.png" width="60px" alt="Lightspeed.run"/></a>
90-
<a href="https://cloudblast.io/?ref=dokploy "><img src="https://cloudblast.io/img/logo-icon.193cf13e.svg" width="250px" alt="Lightspeed.run"/></a>
90+
<a href="https://cloudblast.io/?ref=dokploy "><img src="https://cloudblast.io/img/logo-icon.193cf13e.svg" width="250px" alt="Cloudblast.io"/></a>
91+
<a href="https://startupfa.me/?ref=dokploy "><img src=".github/sponsors/startupfame.png" width="65px" alt="Startupfame"/></a>
9192
</div>
9293

9394
### Community Backers 🤝
@@ -116,7 +117,7 @@ For detailed documentation, visit [docs.dokploy.com](https://docs.dokploy.com).
116117
## Video Tutorial
117118

118119
<a href="https://youtu.be/mznYKPvhcfw">
119-
<img src="https://dokploy.com/banner.webp" alt="Watch the video" width="400" style="border-radius:20px;"/>
120+
<img src="https://dokploy.com/banner.png" alt="Watch the video" width="400" style="border-radius:20px;"/>
120121
</a>
121122

122123
<!-- ## Supported OS

apps/dokploy/components/dashboard/settings/appearance-form.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ const appearanceFormSchema = z.object({
3737
theme: z.enum(["light", "dark", "system"], {
3838
required_error: "Please select a theme.",
3939
}),
40-
language: z.enum(["en", "pl", "zh-Hans"], {
40+
language: z.enum(["en", "pl", "ru", "de", "zh-Hant", "zh-Hans"], {
4141
required_error: "Please select a language.",
4242
}),
4343
});
@@ -175,6 +175,9 @@ export function AppearanceForm() {
175175
{[
176176
{ label: "English", value: "en" },
177177
{ label: "Polski", value: "pl" },
178+
{ label: "Русский", value: "ru" },
179+
{ label: "Deutsch", value: "de" },
180+
{ label: "繁體中文", value: "zh-Hant" },
178181
{ label: "简体中文", value: "zh-Hans" },
179182
].map((preset) => (
180183
<SelectItem key={preset.label} value={preset.value}>

apps/dokploy/components/dashboard/settings/profile/profile-form.tsx

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,11 @@ import {
1616
} from "@/components/ui/form";
1717
import { Input } from "@/components/ui/input";
1818
import { RadioGroup, RadioGroupItem } from "@/components/ui/radio-group";
19+
import { generateSHA256Hash } from "@/lib/utils";
1920
import { api } from "@/utils/api";
2021
import { zodResolver } from "@hookform/resolvers/zod";
2122
import { useTranslation } from "next-i18next";
22-
import { useEffect } from "react";
23+
import { useEffect, useMemo, useState } from "react";
2324
import { useForm } from "react-hook-form";
2425
import { toast } from "sonner";
2526
import { z } from "zod";
@@ -53,6 +54,14 @@ export const ProfileForm = () => {
5354
const { data, refetch } = api.auth.get.useQuery();
5455
const { mutateAsync, isLoading } = api.auth.update.useMutation();
5556
const { t } = useTranslation("settings");
57+
const [gravatarHash, setGravatarHash] = useState<string | null>(null);
58+
59+
const availableAvatars = useMemo(() => {
60+
if (gravatarHash === null) return randomImages;
61+
return randomImages.concat([
62+
`https://www.gravatar.com/avatar/${gravatarHash}`,
63+
]);
64+
}, [gravatarHash]);
5665

5766
const form = useForm<Profile>({
5867
defaultValues: {
@@ -70,6 +79,12 @@ export const ProfileForm = () => {
7079
password: "",
7180
image: data?.image || "",
7281
});
82+
83+
if (data.email) {
84+
generateSHA256Hash(data.email).then((hash) => {
85+
setGravatarHash(hash);
86+
});
87+
}
7388
}
7489
form.reset();
7590
}, [form, form.reset, data]);
@@ -154,7 +169,7 @@ export const ProfileForm = () => {
154169
value={field.value}
155170
className="flex flex-row flex-wrap gap-2 max-xl:justify-center"
156171
>
157-
{randomImages.map((image) => (
172+
{availableAvatars.map((image) => (
158173
<FormItem key={image}>
159174
<FormLabel className="[&:has([data-state=checked])>img]:border-primary [&:has([data-state=checked])>img]:border-1 [&:has([data-state=checked])>img]:p-px cursor-pointer">
160175
<FormControl>

apps/dokploy/components/dashboard/settings/web-server/update-server.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ export const UpdateServer = () => {
4848
<li>Some bug that is blocking to use some features</li>
4949
</ul>
5050
<AlertBlock type="info">
51-
Please we recommend to see the latest version to see if there are
52-
any breaking changes before updating. Go to{" "}
51+
We recommend checking the latest version for any breaking changes
52+
before updating. Go to{" "}
5353
<Link
5454
href="https://github.com/Dokploy/dokploy/releases"
5555
target="_blank"

apps/dokploy/lib/utils.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,11 @@ import { twMerge } from "tailwind-merge";
44
export function cn(...inputs: ClassValue[]) {
55
return twMerge(clsx(inputs));
66
}
7+
8+
export async function generateSHA256Hash(text: string) {
9+
const encoder = new TextEncoder();
10+
const data = encoder.encode(text);
11+
const hashBuffer = await crypto.subtle.digest("SHA-256", data);
12+
const hashArray = Array.from(new Uint8Array(hashBuffer));
13+
return hashArray.map((b) => b.toString(16).padStart(2, "0")).join("");
14+
}

apps/dokploy/next-i18next.config.cjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
module.exports = {
33
i18n: {
44
defaultLocale: "en",
5-
locales: ["en", "pl", "zh-Hans"],
5+
locales: ["en", "pl", "ru", "de", "zh-Hant", "zh-Hans"],
66
localeDetection: false,
77
},
88
fallbackLng: "en",

apps/dokploy/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "dokploy",
3-
"version": "v0.12.0",
3+
"version": "v0.13.0",
44
"private": true,
55
"license": "Apache-2.0",
66
"type": "module",

0 commit comments

Comments
 (0)