This is a simple URL shortener
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
Néfix Estrada 6979f32b35 Merge branch 'release/v1.0.1' vor 7 Monaten
cmd/urlshortener Added log write support vor 7 Monaten
pkg Updated Makefile and improved the DB package vor 7 Monaten
.gitignore Initial commit vor 7 Monaten
Dockerfile Updated the Dockerfile vor 7 Monaten
LICENSE Initial commit vor 7 Monaten
Makefile Increased the deadline dramatically vor 7 Monaten
README.md Added a recomendation vor 7 Monaten

README.md

URL Shortener

This is a simple URL shortener. You can visit it live at https://short.nefixestrada.com

Tech stack

The program is written in Go. For database, it’s using bbolt, a fork of bolt. Also using govalidator for validating the URL’s and go.rice for embedding the static html files into the binary.

How to run

In order to run URL Shortener, you have two options:

Inside a Docker [recommended]

You can easily run URL Shortener inside a Docker container. It’s the recommended choice. You just need to download it from Docker Hub:

sudo docker pull nefix/urlshortener:1
sudo docker run -p 3000:3000 nefix/urlshortener

As a standalone binary

You also can run it as a standalone binary. You need to execute the following commands:

git clone https://gitea.nefixestrada.com/nefix/urlshortener
cd urlshortener
make

This is going to generate a binary named urlshortener

Examples

Docker Compose

version: '3.2'
services:
  urlshortener_server:
    volumes:
      - type: volume
        source: urlshortener_data
        target: /data
        read_only: false
    ports:
      - target: 3000
        published: 8080
        protocol: tcp
        mode: host
    restart: always
    image: nefix/urlshortener:1

volumes:
  urlshortener_data:

FAQ

  • Why it doesn’t have support for HTTPS?
    • You are supposed to run it behind a proxy. If you have no idea what it is, you can check here for more inforrmation.
  • For any other question, you can contact me at nefixestrada@gmail.com