Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
陈曦
sub2api
Commits
db876ba7
Commit
db876ba7
authored
Dec 31, 2025
by
shaw
Browse files
feat(ci): 添加 GitHub Container Registry (GHCR) 支持
parent
b7c6d040
Changes
2
Hide whitespace changes
Inline
Side-by-side
.github/workflows/release.yml
View file @
db876ba7
...
...
@@ -98,6 +98,13 @@ jobs:
username
:
${{ secrets.DOCKERHUB_USERNAME }}
password
:
${{ secrets.DOCKERHUB_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
:
Fetch tags with annotations
run
:
|
# 确保获取完整的 annotated tag 信息
...
...
@@ -161,6 +168,7 @@ jobs:
VERSION=${TAG_NAME#v}
REPO="${{ github.repository }}"
DOCKER_IMAGE="${{ secrets.DOCKERHUB_USERNAME }}/sub2api"
GHCR_IMAGE="ghcr.io/${REPO}"
# 获取 tag message 内容
TAG_MESSAGE='${{ steps.tag_message.outputs.message }}'
...
...
@@ -181,12 +189,15 @@ jobs:
MESSAGE+="🐳 *Docker 部署:*"$'\n'
MESSAGE+="\`\`\`bash"$'\n'
MESSAGE+="# Docker Hub"$'\n'
MESSAGE+="docker pull ${DOCKER_IMAGE}:${TAG_NAME}"$'\n'
MESSAGE+="docker pull ${DOCKER_IMAGE}:latest"$'\n'
MESSAGE+="# GitHub Container Registry"$'\n'
MESSAGE+="docker pull ${GHCR_IMAGE}:${TAG_NAME}"$'\n'
MESSAGE+="\`\`\`"$'\n'$'\n'
MESSAGE+="🔗 *相关链接:*"$'\n'
MESSAGE+="• [GitHub Release](https://github.com/${REPO}/releases/tag/${TAG_NAME})"$'\n'
MESSAGE+="• [Docker Hub](https://hub.docker.com/r/${DOCKER_IMAGE})"$'\n'$'\n'
MESSAGE+="• [Docker Hub](https://hub.docker.com/r/${DOCKER_IMAGE})"$'\n'
MESSAGE+="• [GitHub Packages](https://github.com/${REPO}/pkgs/container/sub2api)"$'\n'$'\n'
MESSAGE+="#Sub2API #Release #${TAG_NAME//./_}"
# 发送消息
...
...
.goreleaser.yaml
View file @
db876ba7
...
...
@@ -78,6 +78,33 @@ dockers:
-
"
--label=org.opencontainers.image.version={{
.Version
}}"
-
"
--label=org.opencontainers.image.revision={{
.Commit
}}"
# GHCR images
-
id
:
ghcr-amd64
goos
:
linux
goarch
:
amd64
image_templates
:
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-amd64"
dockerfile
:
Dockerfile.goreleaser
use
:
buildx
build_flag_templates
:
-
"
--platform=linux/amd64"
-
"
--label=org.opencontainers.image.version={{
.Version
}}"
-
"
--label=org.opencontainers.image.revision={{
.Commit
}}"
-
"
--label=org.opencontainers.image.source=https://github.com/{{
.Env.GITHUB_REPO_OWNER
}}/{{
.Env.GITHUB_REPO_NAME
}}"
-
id
:
ghcr-arm64
goos
:
linux
goarch
:
arm64
image_templates
:
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-arm64"
dockerfile
:
Dockerfile.goreleaser
use
:
buildx
build_flag_templates
:
-
"
--platform=linux/arm64"
-
"
--label=org.opencontainers.image.version={{
.Version
}}"
-
"
--label=org.opencontainers.image.revision={{
.Commit
}}"
-
"
--label=org.opencontainers.image.source=https://github.com/{{
.Env.GITHUB_REPO_OWNER
}}/{{
.Env.GITHUB_REPO_NAME
}}"
# Docker manifests for multi-arch support
docker_manifests
:
-
name_template
:
"
{{
.Env.DOCKERHUB_USERNAME
}}/sub2api:{{
.Version
}}"
...
...
@@ -100,6 +127,27 @@ docker_manifests:
-
"
{{
.Env.DOCKERHUB_USERNAME
}}/sub2api:{{
.Version
}}-amd64"
-
"
{{
.Env.DOCKERHUB_USERNAME
}}/sub2api:{{
.Version
}}-arm64"
# GHCR manifests
-
name_template
:
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}"
image_templates
:
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-amd64"
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-arm64"
-
name_template
:
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:latest"
image_templates
:
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-amd64"
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-arm64"
-
name_template
:
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Major
}}.{{
.Minor
}}"
image_templates
:
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-amd64"
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-arm64"
-
name_template
:
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Major
}}"
image_templates
:
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-amd64"
-
"
ghcr.io/{{
.Env.GITHUB_REPO_OWNER
}}/sub2api:{{
.Version
}}-arm64"
release
:
github
:
owner
:
"
{{
.Env.GITHUB_REPO_OWNER
}}"
...
...
@@ -119,6 +167,15 @@ release:
## 📥 Installation
**Docker:**
```bash
# Docker Hub
docker pull {{ .Env.DOCKERHUB_USERNAME }}/sub2api:{{ .Version }}
# GitHub Container Registry
docker pull ghcr.io/{{ .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}
```
**One-line install (Linux):**
```bash
curl -sSL https://raw.githubusercontent.com/{{ .Env.GITHUB_REPO_OWNER }}/{{ .Env.GITHUB_REPO_NAME }}/main/deploy/install.sh | sudo bash
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment