diff --git a/.dockerignore b/.dockerignore index 93449cc..4e2c7a9 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,59 +1,12 @@ -# Build artifacts and dependencies -target/ -.mvn/ -*.iml -*.ipr -*.iws - -# IDE files -.idea/ -.vscode/ -*.sublime-* -.eclipse -.project -.classpath -.settings/ - -# OS files -.DS_Store -Thumbs.db - -# Version control -.git/ +.git .gitignore -.gitattributes - -# Documentation and scripts (comment out if needed in container) -README.md -*.md -deploy.sh -rollback.sh -fetch-log.sh - -# Docker files (avoid recursion) -docker/ -Dockerfile* -docker-compose* - -# Logs and temp files +**/target/ +**/.buildx-cache/ +.buildx-cache/ +**/log/ log/ -logs/ -*.log -*.tmp - -# Backup files -backup/ -*.backup -*.bak - -# Environment files -.env -.env.* - -# Test files -**/src/test/ - -# Maven wrapper (we install Maven in container) -.mvn/ -mvnw -mvnw.cmd \ No newline at end of file +**/.DS_Store +.DS_Store +.vscode/ +**/.idea/ +**/.serena/ diff --git a/.gitea/workflows/backend-docker.yml b/.gitea/workflows/backend-docker.yml new file mode 100644 index 0000000..ad7270d --- /dev/null +++ b/.gitea/workflows/backend-docker.yml @@ -0,0 +1,40 @@ +name: Build and Push Backend + +on: + push: + branches: [ master, main ] + paths: + - 'docker/**' + - 'play-admin/**' + - 'play-common/**' + - 'play-generator/**' + - 'pom.xml' + workflow_dispatch: {} + +jobs: + docker: + runs-on: docker + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Ensure buildx is available + shell: bash + run: | + docker buildx version || true + docker buildx create --use || true + + - name: Build and push to local registry + env: + REGISTRY: 127.0.0.1:5000 + TAG: ${{ github.sha }} + shell: bash + run: | + docker buildx build \ + --platform linux/amd64 \ + -f docker/Dockerfile \ + -t ${REGISTRY}/peipei/backend:${TAG} \ + -t ${REGISTRY}/peipei/backend:latest \ + --push \ + . +