add uptime kuma image

This commit is contained in:
gOOvER
2023-09-25 18:00:34 +02:00
parent 02a50118ef
commit ede7b44624
3 changed files with 126 additions and 0 deletions

42
.github/workflows/apps.yml vendored Normal file
View File

@@ -0,0 +1,42 @@
name: build apps
on:
workflow_dispatch:
schedule:
- cron: "0 0 * * 1"
push:
branches:
- master
paths:
- apps/**
jobs:
push:
name: "yolks:apps_${{ matrix.app }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
app:
- uptimekuma
steps:
- uses: actions/checkout@v3
- uses: docker/setup-qemu-action@v3
- uses: docker/setup-buildx-action@v3
with:
buildkitd-flags: --debug
- uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.REGISTRY_TOKEN }}
- uses: docker/build-push-action@v5
with:
context: ./apps/${{ matrix.app }}
file: ./apps/${{ matrix.app }}/Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: |
ghcr.io/parkervcp/apps:${{ matrix.app }}

View File

@@ -0,0 +1,46 @@
FROM --platform=$TARGETOS/$TARGETARCH node:18-alpine
LABEL author="Torsten Widmann" maintainer="info@goover.de"
LABEL org.opencontainers.image.source="https://github.com/gOOvER/own-pterodactyl-images"
LABEL org.opencontainers.image.licenses=MIT
RUN apk update \
&& apk upgrade
RUN apk add --no-cache \
autoconf \
automake \
build-base \
ca-certificates\
curl \
bind-tools \
ffmpeg \
g++ \
git \
gpg \
gnupg \
iproute2 \
iputils-ping \
libtool \
python3 \
python3-dev \
sqlite \
tzdata \
zip \
libc6-compat
# updating npm
RUN npm install npm@latest -g
# add cloudflare repo
RUN curl -L https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64 -o /usr/bin/cloudflared \
&& chmod+x /usr/bin/cloudflared
## Setup user and working directory
RUN adduser -D -h /home/container container -s /bin/bash container
USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
CMD ["/bin/ash", "/entrypoint.sh"]

View File

@@ -0,0 +1,38 @@
#!/bin/ash
#System variables
clear
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'
# Switch to the container's working directory
cd /home/container || exit 1
# Wait for the container to fully initialize
sleep 1
# Default the TZ environment variable to UTC.
TZ=${TZ:-UTC}
export TZ
# Set environment variable that holds the Internal Docker IP
INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}')
export INTERNAL_IP
# system informations
echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${RED}Uptime Kuma Image${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${YELLOW}Running on Alpine: ${RED} $(cat /etc/alpine-release)${NC}"
echo -e "${YELLOW}Current timezone: ${RED} $(cat /etc/localtime)${NC}"
echo -e "${YELLOW}NodeJS Version: ${RED} $(node -v) ${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"
# Replace Startup Variables
MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')
echo ":/home/container$ ${MODIFIED_STARTUP}"
# Run the Server
eval ${MODIFIED_STARTUP}