Add GHCR publishing support

This commit is contained in:
Lalit Sudhir
2025-10-27 00:31:18 -07:00
parent 72688cde4c
commit c49957b721
3 changed files with 41 additions and 2 deletions

View File

@@ -33,6 +33,12 @@ jobs:
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract version from tag
id: version
run: |
@@ -55,6 +61,9 @@ jobs:
bentopdf/bentopdf${{ matrix.mode.suffix }}:latest
bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version_without_v }}
bentopdf/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}
ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:latest
ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version_without_v }}
ghcr.io/${{ github.repository_owner }}/bentopdf${{ matrix.mode.suffix }}:${{ steps.version.outputs.version }}
platforms: linux/amd64,linux/arm64
cache-from: type=gha
cache-to: type=gha,mode=max

View File

@@ -102,15 +102,21 @@ You can run BentoPDF locally for development or personal use.
### 🚀 Quick Start with Docker
You can run BentoPDF directly from Docker Hub without cloning the repository:
You can run BentoPDF directly from Docker Hub or GitHub Container Registry without cloning the repository:
You can also watch the video on how to set it up 👉
[BentoPDF Docker Setup](https://drive.google.com/file/d/1C4eJ2nqeaH__1Tlad-xuBHaF2Ha4fSBf/view?usp=drive_link)
**Using Docker Hub:**
```bash
docker run -p 3000:8080 bentopdf/bentopdf:latest
```
**Using GitHub Container Registry:**
```bash
docker run -p 3000:8080 ghcr.io/alam00000/bentopdf:latest
```
Open your browser at: http://localhost:3000
This is the fastest way to try BentoPDF without setting up a development environment.
@@ -171,12 +177,18 @@ For detailed security configuration, see [SECURITY.md](SECURITY.md).
### 📦 Version Management
BentoPDF supports semantic versioning with multiple Docker tags:
BentoPDF supports semantic versioning with multiple Docker tags available on both Docker Hub and GitHub Container Registry:
**Docker Hub:**
- **Latest**: `bentopdf/bentopdf:latest`
- **Specific Version**: `bentopdf/bentopdf:1.0.0`
- **Version with Prefix**: `bentopdf/bentopdf:v1.0.0`
**GitHub Container Registry:**
- **Latest**: `ghcr.io/alam00000/bentopdf:latest`
- **Specific Version**: `ghcr.io/alam00000/bentopdf:1.0.0`
- **Version with Prefix**: `ghcr.io/alam00000/bentopdf:v1.0.0`
#### Quick Release
```bash

View File

@@ -23,16 +23,24 @@ When enabled, Simple Mode will:
Use the pre-built Simple Mode image directly:
**Using Docker Hub:**
```bash
docker run -p 3000:80 bentopdf/bentopdf-simple:latest
```
**Using GitHub Container Registry:**
```bash
docker run -p 3000:80 ghcr.io/alam00000/bentopdf-simple:latest
```
Or with Docker Compose:
```yaml
services:
bentopdf:
# Using Docker Hub
image: bentopdf/bentopdf-simple:latest
# Or using GitHub Container Registry
# image: ghcr.io/alam00000/bentopdf-simple:latest
container_name: bentopdf
restart: unless-stopped
ports:
@@ -142,14 +150,24 @@ When Simple Mode is working correctly, you should see:
### Normal Mode (Full Branding)
**Docker Hub:**
- `bentopdf/bentopdf:latest`
- `bentopdf/bentopdf:v1.0.0` (versioned)
**GitHub Container Registry:**
- `ghcr.io/alam00000/bentopdf:latest`
- `ghcr.io/alam00000/bentopdf:v1.0.0` (versioned)
### Simple Mode (Clean Interface)
**Docker Hub:**
- `bentopdf/bentopdf-simple:latest`
- `bentopdf/bentopdf-simple:v1.0.0` (versioned)
**GitHub Container Registry:**
- `ghcr.io/alam00000/bentopdf-simple:latest`
- `ghcr.io/alam00000/bentopdf-simple:v1.0.0` (versioned)
## 🚀 Production Deployment Examples
### Internal Company Tool