Golinks is a open-sourced short link redirect service in Golang, under MIT-license.
- Golinks styled (
go/mylink
) short link redirect - Parameter substitution (
go/mylink/{VAR} -> https://mylink.com/{VAR}/mypage
) - Multiple organizations(namespaces) support
- Out-of-box solution with public docker image
haosutdio/golinks
- Tracing with Jaeger
$ docker run -v \
/path/to/datadir:/opt/golinks/datadir \
-p 8000:8000 \
haostudio/golinks
# Clone repo
$ git clone https://github.com/haostudio/golinks
# Install dependencies
$ make deps
# Build binary
$ make golinks
# Run
$ ./build/golinks
By default, golinks
supports multiple organizations with JWT authentication.
The links of different organizations are stored in different namespaces. Running
golinks
in NoAuth mode disables authentication and stores all the links in
a shared namespace of the default org.
$ docker run -v \
/path/to/datadir:/opt/golinks/datadir \
-p 8000:8000 \
-e AUTHPROVIDER_NOAUTH_ENABLED=true \
-e AUTHPROVIDER_NOAUTH_DEFAULTORG=my_org \ # optional
haostudio/golinks
$ docker run -v \
/path/to/datadir:/opt/golinks/datadir \
-p 8000:8000 \
-e HTTP_GOLINKS_WIKI=true \
haostudio/golinks
For more options, checkout the configuration guide