fix: update Docker Hub image path from snapotterhq to snapotter

The Docker Hub username is `snapotter`, not `snapotterhq`. Updates all
references in README, CI workflow, and documentation.
This commit is contained in:
SnapOtter
2026-04-25 01:25:45 +08:00
parent 59b803c111
commit 3e3eb6f180
6 changed files with 18 additions and 18 deletions
+5 -5
View File
@@ -109,7 +109,7 @@ jobs:
uses: docker/metadata-action@v5
with:
images: |
snapotterhq/snapotter
snapotter/snapotter
ghcr.io/snapotter-hq/snapotter
- name: Build and push by digest
@@ -120,7 +120,7 @@ jobs:
file: docker/Dockerfile
platforms: ${{ matrix.platform }}
labels: ${{ steps.meta.outputs.labels }}
outputs: type=image,"name=snapotterhq/snapotter,ghcr.io/snapotter-hq/snapotter",push-by-digest=true,name-canonical=true,push=true
outputs: type=image,"name=snapotter/snapotter,ghcr.io/snapotter-hq/snapotter",push-by-digest=true,name-canonical=true,push=true
cache-from: type=registry,ref=ghcr.io/snapotter-hq/snapotter:cache-${{ env.PLATFORM_PAIR }}
cache-to: type=registry,ref=ghcr.io/snapotter-hq/snapotter:cache-${{ env.PLATFORM_PAIR }},mode=max
@@ -168,7 +168,7 @@ jobs:
uses: docker/metadata-action@v5
with:
images: |
snapotterhq/snapotter
snapotter/snapotter
ghcr.io/snapotter-hq/snapotter
tags: |
type=semver,pattern={{version}},value=v${{ needs.release.outputs.new_version }}
@@ -180,8 +180,8 @@ jobs:
working-directory: /tmp/digests
run: |
docker buildx imagetools create \
$(jq -cr '.tags | map(select(startswith("snapotterhq/")) | "-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \
$(printf 'snapotterhq/snapotter@sha256:%s ' *)
$(jq -cr '.tags | map(select(startswith("snapotter/")) | "-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \
$(printf 'snapotter/snapotter@sha256:%s ' *)
- name: Create GHCR manifest
working-directory: /tmp/digests
+1 -1
View File
@@ -3,7 +3,7 @@
</p>
<p align="center">
<a href="https://hub.docker.com/r/snapotterhq/snapotter"><img src="https://img.shields.io/docker/v/snapotterhq/snapotter?label=Docker%20Hub&logo=docker" alt="Docker Hub"></a>
<a href="https://hub.docker.com/r/snapotter/snapotter"><img src="https://img.shields.io/docker/v/snapotter/snapotter?label=Docker%20Hub&logo=docker" alt="Docker Hub"></a>
<a href="https://github.com/orgs/snapotter-hq/packages/container/package/snapotter"><img src="https://img.shields.io/badge/GHCR-ghcr.io%2Fsnapotter--hq%2Fsnapotter-blue?logo=github" alt="GHCR"></a>
<a href="https://github.com/snapotter-hq/snapotter/actions"><img src="https://img.shields.io/github/actions/workflow/status/snapotter-hq/snapotter/ci.yml?label=CI" alt="CI"></a>
<a href="https://github.com/snapotter-hq/snapotter/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-AGPLv3-blue" alt="License"></a>
+1 -1
View File
@@ -78,7 +78,7 @@ All configuration is done through environment variables. Every variable has a se
```yaml
services:
SnapOtter:
image: snapotterhq/snapotter:latest
image: snapotter/snapotter:latest
ports:
- "1349:1349"
volumes:
+4 -4
View File
@@ -10,7 +10,7 @@ See [Docker Image](./docker-tags) for GPU setup, Docker Compose examples, and ve
# docker-compose.yml — Copy this file and run: docker compose up -d
services:
SnapOtter:
image: snapotterhq/snapotter:latest # or ghcr.io/snapotter-hq/snapotter:latest
image: snapotter/snapotter:latest # or ghcr.io/snapotter-hq/snapotter:latest
container_name: SnapOtter
ports:
- "1349:1349" # Web UI + API
@@ -60,7 +60,7 @@ docker compose up -d
The app is then available at `http://localhost:1349`.
> **Docker Hub rate limits?** Replace `snapotterhq/snapotter:latest` with `ghcr.io/snapotter-hq/snapotter:latest` to pull from GitHub Container Registry instead. Both registries receive the same image on every release.
> **Docker Hub rate limits?** Replace `snapotter/snapotter:latest` with `ghcr.io/snapotter-hq/snapotter:latest` to pull from GitHub Container Registry instead. Both registries receive the same image on every release.
## Quick Start (GPU)
@@ -71,7 +71,7 @@ For NVIDIA GPU acceleration on AI tools (background removal, upscaling, face enh
# Install toolkit: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html
services:
SnapOtter:
image: snapotterhq/snapotter:latest
image: snapotter/snapotter:latest
container_name: SnapOtter
ports:
- "1349:1349"
@@ -392,7 +392,7 @@ Note: Cloudflare has a 100 MB upload limit on free plans. Set `MAX_UPLOAD_SIZE_M
The GitHub repository has three workflows:
- **ci.yml** -- Runs automatically on every push and PR. Lints, typechecks, tests, builds, and validates the Docker image (without pushing).
- **release.yml** -- Triggered manually via `workflow_dispatch`. Runs semantic-release to create a version tag and GitHub release, then builds a multi-arch Docker image (amd64 + arm64) and pushes to Docker Hub (`snapotterhq/snapotter`) and GitHub Container Registry (`ghcr.io/snapotter-hq/snapotter`).
- **release.yml** -- Triggered manually via `workflow_dispatch`. Runs semantic-release to create a version tag and GitHub release, then builds a multi-arch Docker image (amd64 + arm64) and pushes to Docker Hub (`snapotter/snapotter`) and GitHub Container Registry (`ghcr.io/snapotter-hq/snapotter`).
- **deploy-docs.yml** -- Builds this documentation site and deploys it to GitHub Pages on push to `main`.
To create a release, go to **Actions > Release > Run workflow** in the GitHub UI, or run:
+4 -4
View File
@@ -5,7 +5,7 @@ SnapOtter ships as a single Docker image that works on all platforms.
## Quick start
```bash
docker run -d --name SnapOtter -p 1349:1349 -v SnapOtter-data:/data snapotterhq/snapotter:latest
docker run -d --name SnapOtter -p 1349:1349 -v SnapOtter-data:/data snapotter/snapotter:latest
```
The app is available at `http://localhost:1349`.
@@ -15,7 +15,7 @@ The app is available at `http://localhost:1349`.
The image includes CUDA support on amd64. If you have an NVIDIA GPU with the [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html) installed, add `--gpus all`:
```bash
docker run -d --name SnapOtter --gpus all -p 1349:1349 -v SnapOtter-data:/data snapotterhq/snapotter:latest
docker run -d --name SnapOtter --gpus all -p 1349:1349 -v SnapOtter-data:/data snapotter/snapotter:latest
```
The image auto-detects your GPU at runtime. Without `--gpus all`, it runs on CPU. Same image either way.
@@ -57,7 +57,7 @@ GET /api/v1/admin/health
```yaml
services:
SnapOtter:
image: snapotterhq/snapotter:latest
image: snapotter/snapotter:latest
ports:
- "1349:1349"
volumes:
@@ -80,7 +80,7 @@ For GPU acceleration via Docker Compose, add the deploy section:
```yaml
services:
SnapOtter:
image: snapotterhq/snapotter:latest
image: snapotter/snapotter:latest
ports:
- "1349:1349"
volumes:
+3 -3
View File
@@ -10,7 +10,7 @@ Open [http://localhost:1349](http://localhost:1349) in your browser.
::: tip Also on Docker Hub
```bash
docker run -d --name SnapOtter -p 1349:1349 -v SnapOtter-data:/data snapotterhq/snapotter:latest
docker run -d --name SnapOtter -p 1349:1349 -v SnapOtter-data:/data snapotter/snapotter:latest
```
Both registries publish the same image on every release.
@@ -29,7 +29,7 @@ You will be asked to change your password on first login.
Add `--gpus all` for GPU-accelerated background removal, upscaling, OCR, face enhancement, and restoration:
```bash
docker run -d --name SnapOtter -p 1349:1349 --gpus all -v SnapOtter-data:/data snapotterhq/snapotter:latest
docker run -d --name SnapOtter -p 1349:1349 --gpus all -v SnapOtter-data:/data snapotter/snapotter:latest
```
Requires the [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html). Falls back to CPU automatically. See [Docker Tags](/guide/docker-tags) for benchmarks.
@@ -40,7 +40,7 @@ Requires the [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud
```yaml
services:
SnapOtter:
image: ghcr.io/snapotter-hq/snapotter:latest # or snapotterhq/snapotter:latest
image: ghcr.io/snapotter-hq/snapotter:latest # or snapotter/snapotter:latest
ports:
- "1349:1349"
volumes: