Running Shlink URL Shortener in Docker on Ubuntu Server

Channel:
Subscribers:
14,500
Published on ● Video Link: https://www.youtube.com/watch?v=FkuSBQ0M_eY



Duration: 2:22
542 views
12


#Shlink #URLShortener #Docker

Full steps can be found at https://i12bretro.github.io/tutorials/0663.html

--------------------------------------------------------------------
What is Shlink?
--------------------------------------------------------------------
A PHP-based self-hosted URL shortener that can be used to serve shortened URLs under your own custom domain. - https://github.com/shlinkio/shlink
 
--------------------------------------------------------------------
Installing Docker
--------------------------------------------------------------------
   01. Log into the Linux host and run the following commands in a terminal window
         # install prerequisites
         sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y
         # add docker gpg key
         curl -fsSL https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release)/gpg | sudo apt-key add -
         # add docker software repository
         sudo add-apt-repository "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release) $(lsb_release -cs) stable"
         # install docker
         sudo apt install docker-ce docker-compose containerd.io -y
         # enable and start docker service
         sudo systemctl enable docker && sudo systemctl start docker
         # add the current user to the docker group
         sudo usermod -aG docker $USER
         # reauthenticate for the new group membership to take effect
         su - $USER
 
--------------------------------------------------------------------
Running Shlink Container
--------------------------------------------------------------------
   01. Continue with the following commands in a terminal window
         # create working directories
         mkdir ~/docker/shlink -p && mkdir ~/docker/mariadb -p
         # set owner of working directories
         sudo chown "$USER":"$USER" ~/docker -R
         # run the mariadb docker container
         docker run -d --name mariadb -e MYSQL_ROOT_PASSWORD='r00tp@$$' -e MYSQL_USER=shlinkio_rw -e MYSQL_PASSWORD='$hlink10!' -e MYSQL_DATABASE=shlinkio -v ~/docker/mariadb:/var/lib/mysql --restart=unless-stopped mariadb:latest
         # run the shlink docker container
         docker run -d --name shlink --link mariadb -e DEFAULT_DOMAIN=b.rto:8080 -e USE_HTTPS=false -e DB_DRIVER=maria -e DB_NAME=shlinkio -e DB_USER=shlinkio_rw -e DB_PASSWORD='$hlink10!' -e DB_HOST=mariadb -e DB_PORT=3306 -p 8080:8080 --restart=unless-stopped shlinkio/shlink:stable
         # run the shlink web client
         docker run -d --name shlink-web-client -p 8888:80 -v ~/docker/shlink/servers.json:/usr/share/nginx/html/servers.json --restart=unless-stopped shlinkio/shlink-web-client
         # generate shlink API key
         docker exec -it shlink shlink api-key:generate
   02. Copy the generated API key to the clipboard
   03. Open a web browser and navigate to http://DNSorIP:8888
   04. Click the Add a server button
   05. Enter a name for the server, the URL should be http://DNSorIP:8080 and paste the copied API key created earlier
   06. Welcome to Shlink
 
Source:  https://hub.docker.com/r/shlinkio/shlink
Documentation:  https://shlink.io/documentation/install-docker-image/
 


### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro







Tags:
Browser Based
Container
Containerization
Docker
Docker How To
Docker Made Easy
Docker Simplified
FOSS
Free Open Source Software
Free Software
Home Lab
Home Lab Ideas
How To
Install Guide
Linux
Open Source
Open Source Software
Self-Hosted
Self-Hosted URL Shortener
Shlink
Shlink.io
Tutorial
URL Shortener
Ubuntu
Web Based
Web Based Tools
i12bretro