Sign inSign up

catokx/openshort

By catokx

Updated 6 months ago

Self-hosted URL shortener. SQLite/MySQL, custom domains, REST API, Docker. Open-source Bitly alt.

Image
API management
Developer tools
Web servers
0

1.0K

catokx/openshort repository overview

OpenShort – Self-Hosted URL Shortener

Docker Pulls Docker Image Version License: MIT GitHub Repo

OpenShort is an open-source, self-hosted URL shortener built for Docker. A modern alternative to Bitly you can run on your own infrastructure — with a web dashboard, custom domains, REST API, and zero-config SQLite or external MySQL support.


Why OpenShort?

  • Self-hosted – full control over your data and infrastructure
  • Zero-config – runs out of the box with embedded SQLite; no external database required
  • Custom domains – use your own branded short links
  • REST API – integrate with your services and automation workflows
  • Single container – backend and frontend in one Docker image
  • Open source – MIT license, actively maintained on GitHub

Quick Start (SQLite – Zero Config)

The fastest way to run OpenShort with persistent data:

docker run -d \
  --name openshort \
  -p 8081:8081 \
  -p 8080:8080 \
  -v openshort-data:/app/data \
  --restart unless-stopped \
  catokx/openshort:latest
  • Dashboard: http://<server-ip>:8081
  • API & Redirects: http://<server-ip>:8080

Always map the /app/data volume to persist your links and settings across restarts.


MySQL Mode (Optional)

Connect to an external MySQL database instead of SQLite:

docker run -d \
  --name openshort \
  -p 8081:8081 \
  -p 8080:8080 \
  -e MYSQL_HOST=your_mysql_host \
  -e MYSQL_PORT=3306 \
  -e MYSQL_DATABASE=openshort \
  -e MYSQL_USER=root \
  -e MYSQL_PASSWORD=your_secure_password \
  --restart unless-stopped \
  catokx/openshort:latest

Features

  • Create and manage short links from a clean web dashboard
  • Custom domain support for branded short URLs
  • Permanent (301) and temporary (302) redirects
  • JWT-based authentication with ASP.NET Identity
  • Modern UI built with Angular and PrimeNG
  • Flexible storage: zero-config SQLite or external MySQL
  • Collision-resistant slug generation

Tech Stack

  • Backend: .NET 9, ASP.NET Core Web API, Entity Framework Core
  • Frontend: Angular 21, PrimeNG, Tailwind CSS v3
  • Auth: ASP.NET Identity + JWT

Who Is It For?

OpenShort is a great fit for:

  • Developers and sysadmins looking for a Docker-based Bitly alternative
  • Small businesses wanting branded short links on their own domain
  • Marketing teams needing self-hosted campaign links
  • Internal teams managing short URLs for tools, docs, and onboarding

Documentation & Source Code

Full documentation, install instructions, api reference are available on: https://openshort.tech

Source code available on: https://github.com/emanueledeamicis/openshort

Tag summary

Content type

Image

Digest

sha256:1e8c286e9

Size

124.6 MB

Last updated

6 months ago

docker pull catokx/openshort