54 lines
1.6 KiB
YAML
54 lines
1.6 KiB
YAML
name: build-docker-images-for-latest-release
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
build-and-push:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
# Checkout the repository
|
|
- name: Checkout repository
|
|
uses: http://fly6516.synology.me:4000/Gitea_Action/checkout@v2
|
|
|
|
# # Pre-pull image if needed
|
|
# - name: Pre Pull Image if Needed
|
|
# run: |
|
|
# IMAGE_NAME="dockerp.com/moby/buildkit:buildx-stable-1"
|
|
# if ! docker image inspect "$IMAGE_NAME" > /dev/null 2>&1; then
|
|
# echo "Image does not exist locally. Pulling..."
|
|
# docker pull "$IMAGE_NAME"
|
|
# else
|
|
# echo "Image already exists locally."
|
|
# fi
|
|
|
|
# Log in to Gitea Docker Registry
|
|
- name: Log in to Gitea Docker Registry
|
|
run: |
|
|
echo ${{ secrets.DOCKER_SYN_PWD }} | docker login https://fly6516.synology.me:8080 -u ${{ secrets.DOCKER_SYN_USER }} --password-stdin
|
|
|
|
# Set Docker Timeout
|
|
- name: Set Docker Timeout
|
|
run: |
|
|
echo "DOCKER_CLIENT_TIMEOUT=300" >> $GITHUB_ENV
|
|
echo "DOCKER_BUILD_TIMEOUT=300" >> $GITHUB_ENV
|
|
|
|
# Build the Docker image
|
|
- name: Build Docker Image
|
|
run: |
|
|
docker build -t fly6516.synology.me:8080/multilang:latest .
|
|
|
|
# Push the Docker image
|
|
- name: Push Docker Image
|
|
run: |
|
|
docker push fly6516.synology.me:8080/multilang:latest
|
|
|
|
# Optional: Verify the pushed image
|
|
- name: Verify Docker Image
|
|
run: |
|
|
docker pull fly6516.synology.me:8080/multilang:latest
|
|
docker run --rm fly6516.synology.me:8080/multilang:latest bash -c "echo 'Image verified'"
|