mirror of
https://github.com/Dokploy/dokploy
synced 2025-06-26 18:27:59 +00:00
Merge branch 'canary' into conduwuit-template
This commit is contained in:
@@ -17,7 +17,7 @@ import {
|
|||||||
Forward,
|
Forward,
|
||||||
GalleryVerticalEnd,
|
GalleryVerticalEnd,
|
||||||
GitBranch,
|
GitBranch,
|
||||||
Heart,
|
HeartIcon,
|
||||||
KeyRound,
|
KeyRound,
|
||||||
type LucideIcon,
|
type LucideIcon,
|
||||||
Package,
|
Package,
|
||||||
@@ -87,7 +87,7 @@ interface NavItem {
|
|||||||
interface ExternalLink {
|
interface ExternalLink {
|
||||||
name: string;
|
name: string;
|
||||||
url: string;
|
url: string;
|
||||||
icon: LucideIcon;
|
icon: React.ComponentType<{ className?: string }>;
|
||||||
}
|
}
|
||||||
|
|
||||||
const data = {
|
const data = {
|
||||||
@@ -212,17 +212,6 @@ const data = {
|
|||||||
// url: "/dashboard/settings/notifications",
|
// url: "/dashboard/settings/notifications",
|
||||||
// },
|
// },
|
||||||
// ],
|
// ],
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// title: "Appearance",
|
|
||||||
// icon: Frame,
|
|
||||||
// items: [
|
|
||||||
// {
|
|
||||||
// title: "Theme",
|
|
||||||
// url: "/dashboard/settings/appearance",
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// },
|
|
||||||
] as NavItem[],
|
] as NavItem[],
|
||||||
settings: [
|
settings: [
|
||||||
{
|
{
|
||||||
@@ -312,13 +301,8 @@ const data = {
|
|||||||
isActive: false,
|
isActive: false,
|
||||||
},
|
},
|
||||||
|
|
||||||
// {
|
|
||||||
// title: "Appearance",
|
|
||||||
// url: "/dashboard/settings/appearance",
|
|
||||||
// icon: Frame,
|
|
||||||
// },
|
|
||||||
] as NavItem[],
|
] as NavItem[],
|
||||||
projects: [
|
help: [
|
||||||
{
|
{
|
||||||
name: "Documentation",
|
name: "Documentation",
|
||||||
url: "https://docs.dokploy.com/docs/core",
|
url: "https://docs.dokploy.com/docs/core",
|
||||||
@@ -332,19 +316,10 @@ const data = {
|
|||||||
{
|
{
|
||||||
name: "Sponsor",
|
name: "Sponsor",
|
||||||
url: "https://opencollective.com/dokploy",
|
url: "https://opencollective.com/dokploy",
|
||||||
icon: Heart,
|
icon: ({ className }) => (
|
||||||
|
<HeartIcon className={cn("text-red-500 fill-red-600 animate-heartbeat", className)} />
|
||||||
|
),
|
||||||
},
|
},
|
||||||
|
|
||||||
// {
|
|
||||||
// name: "Sales & Marketing",
|
|
||||||
// url: "#",
|
|
||||||
// icon: PieChart,
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// name: "Travel",
|
|
||||||
// url: "#",
|
|
||||||
// icon: Map,
|
|
||||||
// },
|
|
||||||
] as ExternalLink[],
|
] as ExternalLink[],
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -652,13 +627,20 @@ export default function Page({ children }: Props) {
|
|||||||
<SidebarGroup className="group-data-[collapsible=icon]:hidden">
|
<SidebarGroup className="group-data-[collapsible=icon]:hidden">
|
||||||
<SidebarGroupLabel>Extra</SidebarGroupLabel>
|
<SidebarGroupLabel>Extra</SidebarGroupLabel>
|
||||||
<SidebarMenu>
|
<SidebarMenu>
|
||||||
{data.projects.map((item) => (
|
{data.help.map((item: ExternalLink) => (
|
||||||
<SidebarMenuItem key={item.name}>
|
<SidebarMenuItem key={item.name}>
|
||||||
<SidebarMenuButton asChild>
|
<SidebarMenuButton asChild>
|
||||||
<Link href={item.url}>
|
<a
|
||||||
<item.icon />
|
href={item.url}
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
className="flex w-full items-center gap-2"
|
||||||
|
>
|
||||||
|
<span className="mr-2">
|
||||||
|
<item.icon className="h-4 w-4" />
|
||||||
|
</span>
|
||||||
<span>{item.name}</span>
|
<span>{item.name}</span>
|
||||||
</Link>
|
</a>
|
||||||
</SidebarMenuButton>
|
</SidebarMenuButton>
|
||||||
</SidebarMenuItem>
|
</SidebarMenuItem>
|
||||||
))}
|
))}
|
||||||
|
|||||||
@@ -165,10 +165,10 @@ const Mongo = (
|
|||||||
router.push(
|
router.push(
|
||||||
`/dashboard/project/${data?.projectId}`,
|
`/dashboard/project/${data?.projectId}`,
|
||||||
);
|
);
|
||||||
toast.success("Postgres deleted successfully");
|
toast.success("Mongo deleted successfully");
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
toast.error("Error deleting the postgres");
|
toast.error("Error deleting the mongo");
|
||||||
});
|
});
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
|
|||||||
33
apps/dokploy/public/templates/cloudflared.svg
Normal file
33
apps/dokploy/public/templates/cloudflared.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 38 38" fill="none">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd"
|
||||||
|
d="M31.079694,0.645206c-1.0388,-0.247509-2.129,-0.177396-3.1268,0.201097
|
||||||
|
-0.9978,0.378497-1.8564,1.047597-2.4626,1.919097-0.6061,0.8715-0.9314,1.90449
|
||||||
|
-0.933,2.96277-0.0015,1.05829 0.3208,2.09219 0.9245,2.9654l-0.1325,0.16058
|
||||||
|
-4.4471,5.23515c-0.2873,-0.1277-0.5906,-0.2311-0.9078,-0.3069-2.7726,-0.6632
|
||||||
|
-5.563,1.0255-6.2325,3.7716-0.355,1.4559-0.0426,2.9167 0.7424,4.0668l-4.60483,
|
||||||
|
5.4208c-0.16295,-0.0482-0.32858,-0.087-0.49607,-0.1162-1.21038,-0.2899-2.48522,
|
||||||
|
-0.1472-3.59979,0.4028-1.11456,0.5501-1.99728,1.4722-2.492545,2.6038-0.495264,
|
||||||
|
1.1317-0.571271,2.4002-0.214622,3.5819 0.356648,1.1817 1.123057,2.2007 2.164107,
|
||||||
|
2.8775 1.04105,0.6768 2.2899,0.9678 3.5264,0.8218 1.23651,-0.1461 2.38126,
|
||||||
|
-0.7198 3.23245,-1.62 0.8512,-0.9003 1.3542,-2.0693 1.4203,-3.3009 0.0661,
|
||||||
|
-1.2316-0.3089,-2.4468-1.05894,-3.4314l4.29464,-5.1489 0.1792,-0.2109c0.2293,
|
||||||
|
0.0911 0.468,0.1669 0.7152,0.226 2.7727,0.6632 5.5631,-1.0255 6.2326,-3.7716
|
||||||
|
0.3373,-1.3835 0.072,-2.7714-0.6289,-3.893l4.6468,-5.4702c0.2538,0.0944 0.5136,
|
||||||
|
0.1718 0.7778,0.2316 1.3628,0.326 2.8005,0.1023 3.9968,-0.6216 1.1963,-0.72398
|
||||||
|
2.0533,-1.88899 2.3824,-3.23877 0.3291,-1.34978 0.1033,-2.77376-0.6276,-3.95867
|
||||||
|
-0.731,-1.18492-1.9072,-2.033711-3.27,-2.359654zM7.630804,34.1959c-0.43554,
|
||||||
|
-0.1042-0.83012,-0.334-1.13383,-0.6602-0.30371,-0.3263-0.50292,-0.7345
|
||||||
|
-0.57243,-1.1729-0.0695,-0.4384-0.00619,-0.8874 0.18193,-1.2902 0.18813,
|
||||||
|
-0.4028 0.49262,-0.7412 0.87497,-0.9726 0.38234,-0.2314 0.82538,-0.3453 1.27308,
|
||||||
|
-0.3273 0.44769,0.018 0.87994,0.1671 1.24209,0.4285 0.36214,0.2613 0.63791,
|
||||||
|
0.6231 0.79244,1.0397 0.15453,0.4165 0.18087,0.8691 0.07569,1.3005 -0.14103,
|
||||||
|
0.5785-0.5083,1.0778-1.02102,1.3881-0.51271,0.3102-1.12887,0.4061-1.71292,
|
||||||
|
0.2664zM29.307094,7.91571c-0.4355,-0.10417-0.8301,-0.33393-1.1338,-0.66021
|
||||||
|
-0.3037,-0.32628-0.5029,-0.73444-0.5724,-1.17286-0.0695,-0.43842-0.0062,
|
||||||
|
-0.88741 0.1819,-1.29018 0.1881,-0.40278 0.4926,-0.74126 0.875,-0.97264
|
||||||
|
0.3823,-0.23138 0.8253,-0.34527 1.273,-0.32726 0.4477,0.01801 0.88,0.16711
|
||||||
|
1.2421,0.42844 0.3622,0.26132 0.638,0.62315 0.7925,1.03971 0.1545,0.41656
|
||||||
|
0.1808,0.86916 0.0757,1.30055 -0.1411,0.57848-0.5083,1.07777-1.0211,1.38804
|
||||||
|
-0.5127,0.31027-1.1288,0.4061-1.7129,0.26641z"
|
||||||
|
fill="#0057D9"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.4 KiB |
18
apps/dokploy/templates/cloudflared/docker-compose.yml
Normal file
18
apps/dokploy/templates/cloudflared/docker-compose.yml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
services:
|
||||||
|
cloudflared:
|
||||||
|
image: 'cloudflare/cloudflared:latest'
|
||||||
|
environment:
|
||||||
|
# Don't forget to set this in your Dokploy Environment
|
||||||
|
- 'TUNNEL_TOKEN=${CLOUDFLARE_TUNNEL_TOKEN}'
|
||||||
|
network_mode: host
|
||||||
|
restart: unless-stopped
|
||||||
|
command: [
|
||||||
|
"tunnel",
|
||||||
|
|
||||||
|
# More tunnel run parameters here:
|
||||||
|
# https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/configure-tunnels/tunnel-run-parameters/
|
||||||
|
"--no-autoupdate",
|
||||||
|
#"--protocol", "http2",
|
||||||
|
|
||||||
|
"run"
|
||||||
|
]
|
||||||
9
apps/dokploy/templates/cloudflared/index.ts
Normal file
9
apps/dokploy/templates/cloudflared/index.ts
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
import type { Schema, Template } from "../utils";
|
||||||
|
|
||||||
|
export function generate(schema: Schema): Template {
|
||||||
|
const envs = [`CLOUDFLARE_TUNNEL_TOKEN="<INSERT TOKEN>"`];
|
||||||
|
|
||||||
|
return {
|
||||||
|
envs,
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1253,5 +1253,22 @@ export const templates: TemplateData[] = [
|
|||||||
},
|
},
|
||||||
tags: ["backend", "chat", "communication", "matrix", "server"],
|
tags: ["backend", "chat", "communication", "matrix", "server"],
|
||||||
load: () => import("./conduwuit/index").then((m) => m.generate),
|
load: () => import("./conduwuit/index").then((m) => m.generate),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "cloudflared",
|
||||||
|
name: "Cloudflared",
|
||||||
|
version: "latest",
|
||||||
|
description:
|
||||||
|
"A lightweight daemon that securely connects local services to the internet through Cloudflare Tunnel.",
|
||||||
|
logo: "cloudflared.svg",
|
||||||
|
links: {
|
||||||
|
github: "https://github.com/cloudflare/cloudflared",
|
||||||
|
website:
|
||||||
|
"https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/",
|
||||||
|
docs: "https://developers.cloudflare.com/cloudflare-one/connections/connect-apps/install-and-setup/",
|
||||||
|
},
|
||||||
|
tags: ["cloud", "networking", "security", "tunnel"],
|
||||||
|
load: () => import("./cloudflared/index").then((m) => m.generate),
|
||||||
|
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|||||||
Reference in New Issue
Block a user