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 }}"