ratemyclient/.forgejo/workflows/docker-build.yml

57 lines
2 KiB
YAML
Raw Normal View History

name: Build and Push Docker Image
on:
push:
branches:
- main
env:
DOCKER_HOST: tcp://172.16.208.4:2375
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Set up Docker
run: |
echo "DOCKER_HOST: ${DOCKER_HOST}"
# Install Docker from official repository to get newer version
apt-get update -qq
apt-get install -y -qq ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update -qq
apt-get install -y -qq docker-ce-cli
docker version
- name: Checkout repository
run: |
git clone ${{ github.server_url }}/${{ github.repository }} .
git checkout ${{ github.sha }}
ls -la
- name: Build Docker image
run: |
docker build \
-t forgejo.sivic.me/${{ github.repository }}:latest \
-t forgejo.sivic.me/${{ github.repository }}:${{ github.sha }} \
.
- name: Log in to Forgejo Container Registry
run: |
echo "${{ secrets.GITEA_TOKEN }}" | docker login forgejo.sivic.me -u ${{ github.actor }} --password-stdin
- name: Push Docker images
run: |
docker push forgejo.sivic.me/${{ github.repository }}:latest
docker push forgejo.sivic.me/${{ github.repository }}:${{ github.sha }}
- name: Summary
run: |
echo "✅ Successfully built and pushed:"
echo " - forgejo.sivic.me/${{ github.repository }}:latest"
echo " - forgejo.sivic.me/${{ github.repository }}:${{ github.sha }}"