mirror of
https://github.com/Dokploy/templates.git
synced 2026-07-15 23:02:03 -05:00
feat: add LinknLink template with Docker Compose and metadata
- Introduced LinknLink, a link management application, with a comprehensive Docker Compose setup for both backend and frontend services. - Added metadata in meta.json including description, logo, and relevant links. - Created template.toml for environment variable configuration and service deployment.
This commit is contained in:
42
blueprints/linknlink/docker-compose.yml
Normal file
42
blueprints/linknlink/docker-compose.yml
Normal file
@@ -0,0 +1,42 @@
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
backend:
|
||||
image: ghcr.io/sonmezerekrem/linknlink/backend:latest
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- backend_data:/app/pb_data
|
||||
working_dir: /app
|
||||
environment:
|
||||
- POCKETBASE_DOMAIN=${POCKETBASE_DOMAIN}
|
||||
- POCKETBASE_ADMIN_EMAIL=${POCKETBASE_ADMIN_EMAIL}
|
||||
- POCKETBASE_ADMIN_PASSWORD=${POCKETBASE_ADMIN_PASSWORD}
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8090/api/health"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
expose:
|
||||
- "8090"
|
||||
|
||||
frontend:
|
||||
image: ghcr.io/sonmezerekrem/linknlink/frontend:latest
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- NODE_ENV=production
|
||||
- NODE_OPTIONS=--max-old-space-size=256
|
||||
- POCKETBASE_URL=${POCKETBASE_URL}
|
||||
- NEXT_PUBLIC_POCKETBASE_URL=${NEXT_PUBLIC_POCKETBASE_URL}
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
memory: 512M
|
||||
reservations:
|
||||
memory: 256M
|
||||
depends_on:
|
||||
- backend
|
||||
expose:
|
||||
- "3000"
|
||||
|
||||
volumes:
|
||||
backend_data:
|
||||
4
blueprints/linknlink/linknlink.svg
Normal file
4
blueprints/linknlink/linknlink.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="128" height="128" color="#ffffff" fill="none" stroke="#ffffff" stroke-width="1.5" stroke-linecap="round">
|
||||
<path d="M9.14339 10.691L9.35031 10.4841C11.329 8.50532 14.5372 8.50532 16.5159 10.4841C18.4947 12.4628 18.4947 15.671 16.5159 17.6497L13.6497 20.5159C11.671 22.4947 8.46279 22.4947 6.48405 20.5159C4.50532 18.5372 4.50532 15.329 6.48405 13.3503L6.9484 12.886" />
|
||||
<path d="M17.0516 11.114L17.5159 10.6497C19.4947 8.67095 19.4947 5.46279 17.5159 3.48405C15.5372 1.50532 12.329 1.50532 10.3503 3.48405L7.48405 6.35031C5.50532 8.32904 5.50532 11.5372 7.48405 13.5159C9.46279 15.4947 12.671 15.4947 14.6497 13.5159L14.8566 13.309" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 716 B |
24
blueprints/linknlink/template.toml
Normal file
24
blueprints/linknlink/template.toml
Normal file
@@ -0,0 +1,24 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
frontend_domain = "${main_domain}"
|
||||
pocketbase_domain = "http://${main_domain}"
|
||||
pocketbase_admin_email = "${email}"
|
||||
pocketbase_admin_password = "${password:32}"
|
||||
pocketbase_url = "http://backend:8090"
|
||||
next_public_pocketbase_url = "http://backend:8090"
|
||||
|
||||
[config]
|
||||
[[config.domains]]
|
||||
serviceName = "frontend"
|
||||
port = 3000
|
||||
host = "${frontend_domain}"
|
||||
|
||||
env = [
|
||||
"POCKETBASE_DOMAIN=${pocketbase_domain}",
|
||||
"POCKETBASE_ADMIN_EMAIL=${pocketbase_admin_email}",
|
||||
"POCKETBASE_ADMIN_PASSWORD=${pocketbase_admin_password}",
|
||||
"NODE_ENV=production",
|
||||
"NODE_OPTIONS=--max-old-space-size=256",
|
||||
"POCKETBASE_URL=${pocketbase_url}",
|
||||
"NEXT_PUBLIC_POCKETBASE_URL=${next_public_pocketbase_url}"
|
||||
]
|
||||
18
meta.json
18
meta.json
@@ -3512,6 +3512,24 @@
|
||||
"self-hosted"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "linknlink",
|
||||
"name": "LinknLink",
|
||||
"version": "latest",
|
||||
"description": "LinknLink is a link management application with PocketBase backend and Next.js frontend.",
|
||||
"logo": "linknlink.svg",
|
||||
"links": {
|
||||
"github": "https://github.com/sonmezerekrem/linknlink",
|
||||
"website": "https://github.com/sonmezerekrem/linknlink",
|
||||
"docs": "https://github.com/sonmezerekrem/linknlink#readme"
|
||||
},
|
||||
"tags": [
|
||||
"link-management",
|
||||
"pocketbase",
|
||||
"nextjs",
|
||||
"self-hosted"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "linkstack",
|
||||
"name": "LinkStack",
|
||||
|
||||
Reference in New Issue
Block a user