add build-push and compose yml files

This commit is contained in:
Nikola 2025-01-05 18:31:12 +00:00
parent 06883c1686
commit aec0fc96c1
3 changed files with 66 additions and 0 deletions

37
.github/workflows/build-push.yml vendored Normal file
View file

@ -0,0 +1,37 @@
name: Build and Push Docker Image
name: Build and Push Docker Image
on:
pull_request:
types: [closed]
branches:
- main
labels:
- CI:Build
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_PAT }}
- name: Set ENV Variable for Docker Compose
run: echo "DOCKER_HUB_USERNAME=${{ secrets.DOCKER_HUB_USERNAME }}" >> $GITHUB_ENV
- name: Build and Push Docker Image
run: |
docker build -t ${{ secrets.DOCKER_HUB_USERNAME }}/go-ethereum:latest .
docker push ${{ secrets.DOCKER_HUB_USERNAME }}/go-ethereum:latest

9
.github/workflows/docker-compose.yml vendored Normal file
View file

@ -0,0 +1,9 @@
version: '3.8'
services:
geth:
image: "${{ secrets.DOCKER_HUB_USERNAME }}/go-ethereum:latest"
ports:
- "8545:8545"
- "30303:30303"

20
build/Dockerfile Normal file
View file

@ -0,0 +1,20 @@
FROM golang:1.23-alpine
# Install dependencies
RUN apk add --no-cache ca-certificates
# Set the working directory
WORKDIR /go-ethereum
# Copy the source code
COPY . .
# Build Geth
RUN make geth
# Expose necessary ports
EXPOSE 8545 8546 30303
# Run Geth
CMD ["build/bin/geth"]