gary c69b5fcee8
Publish Docker Image / Build and publish amd64 and arm64 (push) Failing after 1m5s
Publish multi-platform Docker images to Gitea registry
2026-10-09 19:21:29 +08:00
2025-06-06 05:35:56 +08:00
2026-09-13 16:23:53 -04:00
2024-08-14 07:25:38 +08:00
2025-12-16 22:17:06 -05:00
2025-11-01 15:15:57 -04:00
2026-09-13 16:23:53 -04:00
2026-09-13 16:23:53 -04:00
2023-05-18 21:19:48 +08:00

MetaTube SDK Go

Build Status Go Report Card Require Go Version GitHub License Tag

Metadata Tube SDK in Golang.

Contents

Features

  • Supported platforms
    • Linux
    • Darwin
    • Windows
    • BSD(s)
  • Supported Databases
  • Image processing
    • Auto cropping
    • Badge support
    • Face detection
    • Image hashing
  • RESTful API
  • 20+ providers
  • Text translation

Installation

To install this package, you first need Go installed (go1.25+ is required), then you can use the below Go command to install SDK.

go get -u github.com/metatube-community/metatube-sdk-go

Gitea Docker Deployment

This fork publishes container images to gitea.bytevibe.dev/gary/metatube-server using .gitea/workflows/docker.yml. Images support both linux/amd64 and linux/arm64; Docker selects the matching architecture when pulling.

Actions Setup

  1. Enable Actions and Packages for the Gitea repository.
  2. Register a Linux runner with the ubuntu-latest label. Its job environment must have access to a Docker daemon, and permit QEMU/binfmt registration for building the other architecture. The runner must also be able to download the actions from GitHub and base images and Go dependencies from their registries.
  3. Create a personal access token for gary with package read/write permission. Add it under repository Settings > Actions > Secrets with the name REGISTRY_TOKEN. Do not commit the token to the repository.

Pushes to main publish latest and sha-<full commit hash>. Pushes of tags starting with v publish that tag and the commit tag without changing latest. The commit tag can be used to deploy or roll back to a specific build. The original .github/workflows/ files are upstream GitHub workflows; this fork's Gitea publishing workflow uses the Gitea registry.

Deploy or Update

The included docker-compose.yaml uses the Gitea image. If authentication is required, log in with your Gitea username and a token with package read permission:

docker login gitea.bytevibe.dev -u gary
docker pull gitea.bytevibe.dev/gary/metatube-server:latest
docker compose pull metatube
docker compose up -d metatube

Run these commands on the deployment server in the directory containing your Compose file. Keep its existing database, volumes, token, and other settings when changing the image of an existing deployment. Publishing a new image does not update running containers automatically.

Credits

Library Description
gocolly/colly Elegant Scraper and Crawler Framework for Golang
gin-gonic/gin Gin is a HTTP web framework written in Go
gorm.io/gorm The fantastic ORM library for Golang
esimov/pigo Fast face detection, pupil/eyes localization and facial landmark points detection library in pure Go
robertkrimen/otto A JavaScript interpreter in Go (golang)
modernc.org/sqlite Package sqlite is a CGo-free port of SQLite/SQLite3
corona10/goimagehash Go Perceptual image hashing package
antchfx/xpath XPath package for Golang, supports HTML, XML, JSON document query
gen2brain/jpegli Go encoder/decoder for JPEG based on jpegli

License

Apache-2.0 License

S
Description
No description provided
Readme Apache-2.0
10 MiB
0 Stars 1 Watchers 0 Forks
Languages
Go 99.3%
Makefile 0.5%
Dockerfile 0.2%