feat(service): add linkding template (#6651)

Co-authored-by: 🏔️ Peak <122374094+peaklabs-dev@users.noreply.github.com>
This commit is contained in:
Jérôme Gamez 2026-01-13 00:05:43 +01:00 committed by GitHub
parent bf3f5c92ec
commit b3743d341b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 133 additions and 0 deletions

View file

@ -869,6 +869,30 @@ public function extraFields()
}
$fields->put('Meilisearch', $data->toArray());
break;
case $image->contains('linkding'):
$data = collect([]);
$SERVICE_USER_LINKDING = $this->environment_variables()->where('key', 'SERVICE_USER_LINKDING')->first();
$SERVICE_PASSWORD_LINKDING = $this->environment_variables()->where('key', 'SERVICE_PASSWORD_LINKDING')->first();
if ($SERVICE_USER_LINKDING) {
$data = $data->merge([
'Superuser Name' => [
'key' => data_get($SERVICE_USER_LINKDING, 'key'),
'value' => data_get($SERVICE_USER_LINKDING, 'value'),
],
]);
}
if ($SERVICE_PASSWORD_LINKDING) {
$data = $data->merge([
'Superuser Password' => [
'key' => data_get($SERVICE_PASSWORD_LINKDING, 'key'),
'value' => data_get($SERVICE_PASSWORD_LINKDING, 'value'),
'isPassword' => true,
],
]);
}
$fields->put('Linkding', $data->toArray());
break;
case $image->contains('ghost'):
$data = collect([]);
$MAIL_OPTIONS_AUTH_PASS = $this->environment_variables()->where('key', 'MAIL_OPTIONS_AUTH_PASS')->first();

17
public/svgs/linkding.svg Normal file
View file

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 450 450" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:1.5;">
<g transform="matrix(1,0,0,1,-70.3466,-70.3466)">
<g transform="matrix(1.18075,0,0,1.18075,-1257.39,-1386.74)">
<circle cx="1314.98" cy="1424.52" r="190.496" style="fill:rgb(88,86,224);"/>
</g>
<g transform="matrix(0.793058,0,0,0.793058,-739.034,-836.215)">
<g transform="matrix(0.707351,0.706862,-0.706862,0.707351,1331.93,-512.804)">
<path d="M1244.39,1293.95L1244.39,1493.59C1244.39,1493.59 1243.58,1561.48 1319.29,1562.47C1395.27,1563.46 1394.17,1493.59 1394.17,1493.59L1394.17,1293.95" style="fill:none;stroke:white;stroke-width:34.15px;"/>
</g>
<g transform="matrix(-0.710067,-0.704134,0.704134,-0.710067,1284.12,3366.41)">
<path d="M1244.39,1293.95L1244.39,1493.59C1244.39,1493.59 1243.58,1561.48 1319.29,1562.47C1395.27,1563.46 1394.17,1493.59 1394.17,1493.59L1394.17,1293.95" style="fill:none;stroke:white;stroke-width:34.15px;"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -0,0 +1,20 @@
# documentation: https://linkding.link/
# slogan: A self-hosted bookmark manager designed to be minimal, fast, and easy to set up. (Includes feature for archiving websites as HTML snapshots)
# category: RSS
# tags: rss, feed
# logo: svgs/linkding.svg
# port: 9090
services:
linkding-plus:
image: sissbruecker/linkding:latest-plus
volumes:
- 'linkding_data:/etc/linkding/data'
environment:
- SERVICE_URL_LINKDING_9090
- LD_SUPERUSER_NAME=${SERVICE_USER_LINKDING}
- LD_SUPERUSER_PASSWORD=${SERVICE_PASSWORD_LINKDING}
healthcheck:
test: ["CMD-SHELL", "bash -c ':> /dev/tcp/127.0.0.1/9090' || exit 1"]
interval: 5s
timeout: 5s

View file

@ -0,0 +1,20 @@
# documentation: https://linkding.link/
# slogan: A self-hosted bookmark manager designed to be minimal, fast, and easy to set up.
# category: RSS
# tags: rss, feed
# logo: svgs/linkding.svg
# port: 9090
services:
linkding:
image: sissbruecker/linkding:latest
volumes:
- 'linkding_data:/etc/linkding/data'
environment:
- SERVICE_URL_LINKDING_9090
- LD_SUPERUSER_NAME=${SERVICE_USER_LINKDING}
- LD_SUPERUSER_PASSWORD=${SERVICE_PASSWORD_LINKDING}
healthcheck:
test: ["CMD-SHELL", "bash -c ':> /dev/tcp/127.0.0.1/9090' || exit 1"]
interval: 5s
timeout: 5s

View file

@ -2357,6 +2357,32 @@
"minversion": "0.0.0",
"port": "80"
},
"linkding-plus": {
"documentation": "https://linkding.link/?utm_source=coolify.io",
"slogan": "A self-hosted bookmark manager designed to be minimal, fast, and easy to set up. (Includes feature for archiving websites as HTML snapshots)",
"compose": "c2VydmljZXM6CiAgbGlua2RpbmctcGx1czoKICAgIGltYWdlOiAnc2lzc2JydWVja2VyL2xpbmtkaW5nOmxhdGVzdC1wbHVzJwogICAgdm9sdW1lczoKICAgICAgLSAnbGlua2RpbmdfZGF0YTovZXRjL2xpbmtkaW5nL2RhdGEnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX1VSTF9MSU5LRElOR185MDkwCiAgICAgIC0gJ0xEX1NVUEVSVVNFUl9OQU1FPSR7U0VSVklDRV9VU0VSX0xJTktESU5HfScKICAgICAgLSAnTERfU1VQRVJVU0VSX1BBU1NXT1JEPSR7U0VSVklDRV9QQVNTV09SRF9MSU5LRElOR30nCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gImJhc2ggLWMgJzo+IC9kZXYvdGNwLzEyNy4wLjAuMS85MDkwJyB8fCBleGl0IDEiCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiA1cwo=",
"tags": [
"rss",
"feed"
],
"category": "RSS",
"logo": "svgs/linkding.svg",
"minversion": "0.0.0",
"port": "9090"
},
"linkding": {
"documentation": "https://linkding.link/?utm_source=coolify.io",
"slogan": "A self-hosted bookmark manager designed to be minimal, fast, and easy to set up.",
"compose": "c2VydmljZXM6CiAgbGlua2Rpbmc6CiAgICBpbWFnZTogJ3Npc3NicnVlY2tlci9saW5rZGluZzpsYXRlc3QnCiAgICB2b2x1bWVzOgogICAgICAtICdsaW5rZGluZ19kYXRhOi9ldGMvbGlua2RpbmcvZGF0YScKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfVVJMX0xJTktESU5HXzkwOTAKICAgICAgLSAnTERfU1VQRVJVU0VSX05BTUU9JHtTRVJWSUNFX1VTRVJfTElOS0RJTkd9JwogICAgICAtICdMRF9TVVBFUlVTRVJfUEFTU1dPUkQ9JHtTRVJWSUNFX1BBU1NXT1JEX0xJTktESU5HfScKICAgIGhlYWx0aGNoZWNrOgogICAgICB0ZXN0OgogICAgICAgIC0gQ01ELVNIRUxMCiAgICAgICAgLSAiYmFzaCAtYyAnOj4gL2Rldi90Y3AvMTI3LjAuMC4xLzkwOTAnIHx8IGV4aXQgMSIKICAgICAgaW50ZXJ2YWw6IDVzCiAgICAgIHRpbWVvdXQ6IDVzCg==",
"tags": [
"rss",
"feed"
],
"category": "RSS",
"logo": "svgs/linkding.svg",
"minversion": "0.0.0",
"port": "9090"
},
"listmonk": {
"documentation": "https://listmonk.app/?utm_source=coolify.io",
"slogan": "Self-hosted newsletter and mailing list manager",

View file

@ -2357,6 +2357,32 @@
"minversion": "0.0.0",
"port": "80"
},
"linkding-plus": {
"documentation": "https://linkding.link/?utm_source=coolify.io",
"slogan": "A self-hosted bookmark manager designed to be minimal, fast, and easy to set up. (Includes feature for archiving websites as HTML snapshots)",
"compose": "c2VydmljZXM6CiAgbGlua2RpbmctcGx1czoKICAgIGltYWdlOiAnc2lzc2JydWVja2VyL2xpbmtkaW5nOmxhdGVzdC1wbHVzJwogICAgdm9sdW1lczoKICAgICAgLSAnbGlua2RpbmdfZGF0YTovZXRjL2xpbmtkaW5nL2RhdGEnCiAgICBlbnZpcm9ubWVudDoKICAgICAgLSBTRVJWSUNFX0ZRRE5fTElOS0RJTkdfOTA5MAogICAgICAtICdMRF9TVVBFUlVTRVJfTkFNRT0ke1NFUlZJQ0VfVVNFUl9MSU5LRElOR30nCiAgICAgIC0gJ0xEX1NVUEVSVVNFUl9QQVNTV09SRD0ke1NFUlZJQ0VfUEFTU1dPUkRfTElOS0RJTkd9JwogICAgaGVhbHRoY2hlY2s6CiAgICAgIHRlc3Q6CiAgICAgICAgLSBDTUQtU0hFTEwKICAgICAgICAtICJiYXNoIC1jICc6PiAvZGV2L3RjcC8xMjcuMC4wLjEvOTA5MCcgfHwgZXhpdCAxIgogICAgICBpbnRlcnZhbDogNXMKICAgICAgdGltZW91dDogNXMK",
"tags": [
"rss",
"feed"
],
"category": "RSS",
"logo": "svgs/linkding.svg",
"minversion": "0.0.0",
"port": "9090"
},
"linkding": {
"documentation": "https://linkding.link/?utm_source=coolify.io",
"slogan": "A self-hosted bookmark manager designed to be minimal, fast, and easy to set up.",
"compose": "c2VydmljZXM6CiAgbGlua2Rpbmc6CiAgICBpbWFnZTogJ3Npc3NicnVlY2tlci9saW5rZGluZzpsYXRlc3QnCiAgICB2b2x1bWVzOgogICAgICAtICdsaW5rZGluZ19kYXRhOi9ldGMvbGlua2RpbmcvZGF0YScKICAgIGVudmlyb25tZW50OgogICAgICAtIFNFUlZJQ0VfRlFETl9MSU5LRElOR185MDkwCiAgICAgIC0gJ0xEX1NVUEVSVVNFUl9OQU1FPSR7U0VSVklDRV9VU0VSX0xJTktESU5HfScKICAgICAgLSAnTERfU1VQRVJVU0VSX1BBU1NXT1JEPSR7U0VSVklDRV9QQVNTV09SRF9MSU5LRElOR30nCiAgICBoZWFsdGhjaGVjazoKICAgICAgdGVzdDoKICAgICAgICAtIENNRC1TSEVMTAogICAgICAgIC0gImJhc2ggLWMgJzo+IC9kZXYvdGNwLzEyNy4wLjAuMS85MDkwJyB8fCBleGl0IDEiCiAgICAgIGludGVydmFsOiA1cwogICAgICB0aW1lb3V0OiA1cwo=",
"tags": [
"rss",
"feed"
],
"category": "RSS",
"logo": "svgs/linkding.svg",
"minversion": "0.0.0",
"port": "9090"
},
"listmonk": {
"documentation": "https://listmonk.app/?utm_source=coolify.io",
"slogan": "Self-hosted newsletter and mailing list manager",