Skip to content

Feature Request: Automatic Docker Imaging #38

@leshicodes

Description

@leshicodes

First of all, thank you for creating Wingfit! I noticed that you already have a Docker workflow setup with GitHub Actions that builds and publishes images to GHCR on tag pushes. I'd like to contribute by enhancing this automation system to make it more robust and flexible.

Proposal

Container Registry Agnostic

  • Add Docker Hub publishing alongside GitHub Container Registry
  • Implement proper authentication and secret management for both registries

Enhanced Versioning

  • Generate Docker tags based on semantic versioning
  • Add build date and Git commit labels to images for better traceability

Optimization

  • Enhance layer caching in the Dockerfile
  • Implement multi-stage builds to reduce final image size
  • Add (optional?) healthcheck to the container

Build Configurations

  • Create separate production and development builds
  • Add architecture-specific builds (amd64, arm64)

Plan

  1. .github\workflows\docker-publish.yml:
name: Build and Deploy Docker

on:
  push:
    tags:
      - 'v*.*.*'  # Semantic version tags
    branches:
      - main  # Optional: build dev images from main branch

env:
  REGISTRY_GHCR: ghcr.io
  REGISTRY_DOCKER: docker.io
  IMAGE_NAME: ${{ github.repository }}

jobs:
  # Enhanced build job with multi-registry support
  1. Creating Docker Hub secrets in the repository settings
  2. Improving the Dockerfile for better caching and optimization
  3. Adding docs abt the new Docker image versioning strategy

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions