4 Commits

Author SHA1 Message Date
f69de26c1b added Netdata in monitoring services
Some checks failed
continuous-integration/drone/tag Build is failing
2025-10-12 15:31:25 +05:30
0431998723 added step in .drone.yml to push image to REGISTRY_HOST 2025-10-12 15:01:46 +05:30
69a9e8000c changed http to https
All checks were successful
continuous-integration/drone/tag Build is passing
2025-10-11 22:34:32 +05:30
6afbc899e1 always restart docker container 2025-10-11 22:29:25 +05:30
2 changed files with 39 additions and 14 deletions

View File

@@ -3,7 +3,6 @@ kind: pipeline
type: docker type: docker
name: default name: default
# ARM64 platform (for your Pi runner)
platform: platform:
os: linux os: linux
arch: arm64 arch: arm64
@@ -12,7 +11,6 @@ workspace:
path: /drone/src path: /drone/src
steps: steps:
# Step 1a: Git fetch tags locally
- name: fetch-tags - name: fetch-tags
image: docker:24 image: docker:24
environment: environment:
@@ -26,7 +24,6 @@ steps:
# Save to file to share with next step # Save to file to share with next step
echo $LATEST_TAG > /drone/src/LATEST_TAG.txt echo $LATEST_TAG > /drone/src/LATEST_TAG.txt
# Step 1b: Check if image exists on remote LAN Docker
- name: check-remote-image - name: check-remote-image
image: docker:24 image: docker:24
environment: environment:
@@ -42,7 +39,6 @@ steps:
echo "⚙️ Docker image apps/homepage:$IMAGE_TAG not found — proceeding to build..."; echo "⚙️ Docker image apps/homepage:$IMAGE_TAG not found — proceeding to build...";
fi fi
# Step 2: Build Docker image (dynamic tag)
- name: build-image - name: build-image
image: docker:24 image: docker:24
environment: environment:
@@ -57,7 +53,30 @@ steps:
echo "🔨 Building Docker image apps/homepage:$IMAGE_TAG ..." echo "🔨 Building Docker image apps/homepage:$IMAGE_TAG ..."
docker build --network=host -t apps/homepage:$IMAGE_TAG -t apps/homepage:latest . docker build --network=host -t apps/homepage:$IMAGE_TAG -t apps/homepage:latest .
# Step 3: Stop old container (if exists) - name: push-image
image: docker:24
environment:
DOCKER_HOST: tcp://192.168.1.111:2376
REGISTRY_HOST:
from_secret: REGISTRY_HOST
REGISTRY_USER:
from_secret: REGISTRY_USER
REGISTRY_PASS:
from_secret: REGISTRY_PASS
commands:
- |
IMAGE_TAG=$(cat /drone/src/LATEST_TAG.txt)
if [ -z "$IMAGE_TAG" ]; then
echo "❌ No tag found in LATEST_TAG.txt — cannot push."
exit 1
fi
echo "🔑 Logging into registry $REGISTRY_HOST ..."
echo "$REGISTRY_PASS" | docker login $REGISTRY_HOST -u "$REGISTRY_USER" --password-stdin
echo "📤 Pushing apps/homepage:$IMAGE_TAG ..."
docker push $REGISTRY_HOST/apps/homepage:$IMAGE_TAG
echo "📤 Pushing apps/homepage:latest ..."
docker push $REGISTRY_HOST/apps/homepage:latest
- name: stop-old - name: stop-old
image: docker:24 image: docker:24
environment: environment:
@@ -67,7 +86,6 @@ steps:
echo "🛑 Stopping old container..." echo "🛑 Stopping old container..."
docker rm -f homepage || true docker rm -f homepage || true
# Step 4: Run container
- name: run-container - name: run-container
image: docker:24 image: docker:24
environment: environment:
@@ -80,6 +98,7 @@ steps:
--name homepage \ --name homepage \
-p 3001:3000 \ -p 3001:3000 \
-e NODE_ENV=production \ -e NODE_ENV=production \
--restart always \
apps/homepage:$IMAGE_TAG apps/homepage:$IMAGE_TAG
# Trigger rules # Trigger rules

View File

@@ -20,19 +20,19 @@ const items = [
serviceList: [ serviceList: [
{ {
name: "Jellyseerr", name: "Jellyseerr",
url: "http://jellyseerr.aetoskia.com", url: "https://jellyseerr.aetoskia.com",
desc: "Summon films and series from the digital void.", desc: "Summon films and series from the digital void.",
external: true external: true
}, },
{ {
name: "Sonarr", name: "Sonarr",
url: "http://sonarr.aetoskia.com", url: "https://sonarr.aetoskia.com",
desc: "Keep the endless chronicles of TV under iron control.", desc: "Keep the endless chronicles of TV under iron control.",
external: true external: true
}, },
{ {
name: "Radarr", name: "Radarr",
url: "http://radarr.aetoskia.com", url: "https://radarr.aetoskia.com",
desc: "Command the legions of cinema, enforce cinematic order.", desc: "Command the legions of cinema, enforce cinematic order.",
external: true external: true
}, },
@@ -46,19 +46,19 @@ const items = [
serviceList: [ serviceList: [
{ {
name: "Gitea", name: "Gitea",
url: "http://gitea.aetoskia.com", url: "https://gitea.aetoskia.com",
desc: "Forge and safeguard code like a sacred relic.", desc: "Forge and safeguard code like a sacred relic.",
external: true external: true
}, },
{ {
name: "Registry", name: "Registry",
url: "http://registry.aetoskia.com", url: "https://registry.aetoskia.com",
desc: "Monitor core constructs of the digital empire.", desc: "Monitor core constructs of the digital empire.",
external: true external: true
}, },
{ {
name: "Drone", name: "Drone",
url: "http://drone.aetoskia.com", url: "https://drone.aetoskia.com",
desc: "Automaton architect, building pipelines of perfection.", desc: "Automaton architect, building pipelines of perfection.",
external: true external: true
}, },
@@ -70,15 +70,21 @@ const items = [
icon: <MonitorHeartIcon/>, icon: <MonitorHeartIcon/>,
title: 'The Vigilant Watch', title: 'The Vigilant Watch',
serviceList: [ serviceList: [
{
name: "Netdata",
url: "https://netdata.aetoskia.com",
desc: "Watch over the mechanized legions and digital armories with the unblinking eye of the Omnissiah.",
external: true
},
{ {
name: "Portainer", name: "Portainer",
url: "http://portainer.aetoskia.com", url: "https://portainer.aetoskia.com",
desc: "Oversee the fleet of containers with unyielding vigilance.", desc: "Oversee the fleet of containers with unyielding vigilance.",
external: true external: true
}, },
{ {
name: "Traefik", name: "Traefik",
url: "http://traefik.aetoskia.com", url: "https://traefik.aetoskia.com",
desc: "Marshal your gateways and protect the flow between realms.", desc: "Marshal your gateways and protect the flow between realms.",
external: true external: true
}, },