feat: add OCI labels and README push for Docker Hub
Add OCI standard labels to Dockerfile.ci and push README.md to Docker Hub image page via docker-pushrm in CI workflow.
This commit is contained in:
@@ -65,8 +65,21 @@ jobs:
|
||||
with:
|
||||
context: .
|
||||
file: Dockerfile.ci
|
||||
build-args: JAR_FILE=${{ steps.jar.outputs.file }}
|
||||
build-args: |
|
||||
JAR_FILE=${{ steps.jar.outputs.file }}
|
||||
IMAGE_VERSION=${{ gitea.event.release.tag_name }}
|
||||
IMAGE_VENDOR=${{ vars.VENDOR }}
|
||||
BUILD_DATE=${{ gitea.event.release.published_at }}
|
||||
push: true
|
||||
tags: |
|
||||
${{ steps.meta.outputs.tag_version }}
|
||||
${{ steps.meta.outputs.tag_latest }}
|
||||
|
||||
- name: Push README to Docker Hub
|
||||
run: >
|
||||
docker run --rm
|
||||
-v "$(pwd)/README.md:/workspace/README.md:ro"
|
||||
-e DOCKER_USER="${{ vars.DOCKER_HUB_USERNAME }}"
|
||||
-e DOCKER_PASS="${{ secrets.DOCKER_HUB_TOKEN }}"
|
||||
chko/docker-pushrm:latest
|
||||
"${{ vars.DOCKER_HUB_USERNAME }}/${{ env.APP_NAME }}"
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
variables:
|
||||
GRADLE_OPTS: -Dorg.gradle.daemon=false
|
||||
DOCKER_HOST: unix:///var/run/docker.sock
|
||||
|
||||
stages:
|
||||
- release
|
||||
|
||||
release:
|
||||
stage: release
|
||||
image: amazoncorretto:21-alpine
|
||||
cache:
|
||||
key: gradle
|
||||
paths:
|
||||
- .gradle/wrapper
|
||||
- .gradle/caches
|
||||
before_script:
|
||||
- chmod +x gradlew
|
||||
- apk add --no-cache docker-cli
|
||||
script:
|
||||
- ./gradlew bootJar -x test -PartefactVersion="$CI_COMMIT_TAG"
|
||||
- JAR_FILE=$(find build/libs -name '*.jar' | head -1)
|
||||
- echo "Building Docker image for tag $CI_COMMIT_TAG with JAR $JAR_FILE"
|
||||
- docker build
|
||||
-f Dockerfile.ci
|
||||
--build-arg JAR_FILE="$JAR_FILE"
|
||||
-t "$CI_REGISTRY_IMAGE:$CI_COMMIT_TAG"
|
||||
.
|
||||
- docker tag "$CI_REGISTRY_IMAGE:$CI_COMMIT_TAG" "$CI_REGISTRY_IMAGE:latest"
|
||||
- echo "Pushing image $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG"
|
||||
- docker login "$CI_REGISTRY" -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD"
|
||||
- docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_TAG"
|
||||
- docker push "$CI_REGISTRY_IMAGE:latest"
|
||||
rules:
|
||||
- if: $CI_COMMIT_TAG
|
||||
@@ -2,6 +2,18 @@ FROM amazoncorretto:21-alpine
|
||||
WORKDIR /app
|
||||
|
||||
ARG JAR_FILE
|
||||
ARG IMAGE_VERSION=dev
|
||||
ARG IMAGE_VENDOR=OnixByte
|
||||
ARG BUILD_DATE
|
||||
|
||||
COPY ${JAR_FILE} app.jar
|
||||
|
||||
LABEL org.opencontainers.image.title="delta-force-guide-server" \
|
||||
org.opencontainers.image.description="REST API backend for managing Delta Force game firearm builds and modifications" \
|
||||
org.opencontainers.image.version="${IMAGE_VERSION}" \
|
||||
org.opencontainers.image.vendor="${IMAGE_VENDOR}" \
|
||||
org.opencontainers.image.source="https://git.onixbyte.com/onixbyte/delta-force-guide-server" \
|
||||
org.opencontainers.image.licenses="MIT" \
|
||||
org.opencontainers.image.created="${BUILD_DATE}"
|
||||
|
||||
ENTRYPOINT ["java", "-jar", "app.jar"]
|
||||
|
||||
Reference in New Issue
Block a user