Enhance Docker build process by adding FORGE_SNAPSHOT_TAG argument and updating image build and push steps for better clarity and functionality
Some checks failed
Build & Push Forge-Kasm / docker (push) Failing after 53s
Some checks failed
Build & Push Forge-Kasm / docker (push) Failing after 53s
This commit is contained in:
@@ -44,16 +44,23 @@ jobs:
|
||||
USERNAME=${{ secrets.DOCKERHUB_USERNAME }}
|
||||
TAG=${{ steps.get_tag.outputs.snapshot_tag }}
|
||||
|
||||
echo "Building and pushing image as: $USERNAME/$IMAGE:$TAG"
|
||||
echo "Building Docker image as: $USERNAME/$IMAGE:$TAG"
|
||||
|
||||
docker build -t $USERNAME/$IMAGE:$TAG .
|
||||
docker build \
|
||||
--build-arg FORGE_SNAPSHOT_TAG=$TAG \
|
||||
-t $USERNAME/$IMAGE:$TAG .
|
||||
|
||||
echo "Pushing Docker image: $USERNAME/$IMAGE:$TAG"
|
||||
docker push $USERNAME/$IMAGE:$TAG
|
||||
|
||||
- name: (Optional) Also Push 'latest' Tag
|
||||
- name: Also Push 'latest' Tag
|
||||
run: |
|
||||
IMAGE=forge-kasm
|
||||
USERNAME=${{ secrets.DOCKERHUB_USERNAME }}
|
||||
TAG=${{ steps.get_tag.outputs.snapshot_tag }}
|
||||
|
||||
echo "Tagging image as 'latest'"
|
||||
docker tag $USERNAME/$IMAGE:$TAG $USERNAME/$IMAGE:latest
|
||||
|
||||
echo "Pushing Docker image: $USERNAME/$IMAGE:latest"
|
||||
docker push $USERNAME/$IMAGE:latest
|
||||
|
||||
11
Dockerfile
11
Dockerfile
@@ -10,17 +10,22 @@ WORKDIR $HOME
|
||||
|
||||
######### Customize Container Here ###########
|
||||
|
||||
### Install Java 17
|
||||
# Add new ARG
|
||||
ARG FORGE_SNAPSHOT_TAG
|
||||
|
||||
# Install Java
|
||||
RUN apt-get update && \
|
||||
apt-get install -y openjdk-17-jdk && \
|
||||
apt-get clean && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
### Install Forge to /opt/forge, placing the start file at /opt/forge/forge.sh
|
||||
# Use snapshot tag in URL to bust cache if it changes
|
||||
WORKDIR /tmp/forge-download
|
||||
RUN apt-get update && apt-get install -y jq curl && \
|
||||
SNAPSHOT_URL=$(curl -s https://api.github.com/repos/Card-Forge/forge/releases/tags/daily-snapshots \
|
||||
| jq -r '.assets[] | select(.name | test("forge-installer-.*\\.tar\\.bz2")) | .browser_download_url') && \
|
||||
| jq -r --arg TAG "$FORGE_SNAPSHOT_TAG" '.assets[] | select(.name | contains($TAG)) | .browser_download_url') && \
|
||||
echo "Downloading $SNAPSHOT_URL" && \
|
||||
curl -L "$SNAPSHOT_URL" -o forge.tar.bz2 && \
|
||||
mkdir -p /opt/forge && \
|
||||
tar -xjf forge.tar.bz2 -C /opt/forge && \
|
||||
@@ -46,4 +51,4 @@ ENV HOME /home/kasm-user
|
||||
WORKDIR $HOME
|
||||
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
|
||||
|
||||
USER 1000
|
||||
USER 1000
|
||||
|
||||
Reference in New Issue
Block a user