Compare commits

...

19 Commits
main ... main

2 changed files with 28 additions and 15 deletions

View File

@ -26,7 +26,7 @@ steps:
fi
- name: security-scan
image: aquasec/trivy:latest
image: ghcr.io/aquasecurity/trivy:0.69.3
commands:
- trivy image --input image.tar --severity HIGH,CRITICAL --exit-code 1
@ -42,18 +42,15 @@ steps:
- git config --global user.email "drone@ci.local"
- git config --global user.name "Drone CI"
# Remote setzen
#- git remote set-url origin https://git.efi.th-nuernberg.de/gitea/freudenreichan/EinfuehrungInDocker_Pipeline2
# Repo clonen
- git clone https://git.efi.th-nuernberg.de/gitea/freudenreichan/EinfuehrungInDocker_Pipeline2.git
- cd EinfuehrungInDocker_Pipeline
- git clone https://$GITEA_TOKEN@git.efi.th-nuernberg.de/gitea/koeniged93584/EinfuehrungInDocker_Pipeline2.git
- cd EinfuehrungInDocker_Pipeline2
# Branch wechseln oder erstellen
- git checkout drone-artifacts || git checkout -b drone-artifacts
# Artifact löschen und neu hinzufügen
- git rm image.tar
- git rm image.tar || true
- cp $DRONE_WORKSPACE/image.tar .
- git add image.tar
@ -64,4 +61,4 @@ steps:
- git pull || true
# Push
- git push
- git push --set-upstream origin drone-artifacts

View File

@ -1,9 +1,8 @@
# Base-Image
FROM ubuntu:latest
# Base-Imagee
FROM alpine:latest AS builder
# Pakete installieren
RUN apt-get update
RUN apt-get install -y build-essential gcc curl vim net-tools
RUN apk add --no-cache build-base gcc
# Arbeitsverzeichnis setzen
WORKDIR /app
@ -12,11 +11,28 @@ WORKDIR /app
COPY . .
# Code kompilieren
RUN gcc -o deployment deployment.c
RUN gcc -static -o deployment deployment.c
FROM alpine:latest
RUN apk upgrade --no-cache
RUN addgroup -S appgroup && adduser -S appuser -G appgroup
# Arbeitsverzeichnis setzen
WORKDIR /app
COPY --from=builder /app/deployment .
# Verzeichnis für Ausgabe anlegen
RUN mkdir /output
RUN mkdir /output && chown appuser:appgroup /output
VOLUME ["/output"]
USER appuser
HEALTHCHECK --interval=30s --timeout=5s --start-period=15s --retries=3 \
CMD test -f /output/output.txt || exit 1
# Ausgabe wird ins Container-Dateisystem geschrieben
ENTRYPOINT ["/bin/bash", "-c"]
ENTRYPOINT ["/bin/sh", "-c"]
CMD ["./deployment 10 > /output/output.txt && tail -f /output/output.txt"]