Привет! На связи Игорь из техподдержки PQ.Hosting! Я продолжаю писать о незаезженных self-hosted приложениях, которые можно легко установить на свой виртуальный сервер. В прошлый раз я рассказывал, как поднять собственную интернет-машину времени с помощью Archive box. В этот раз речь пойдет про Slash — гитаристе группы Guns N’ Roses интересном веб-сервисе для сокращения и кастомизации ссылок. 

Пару слов о Slash

Slash — веб-приложение с открытым исходным кодом, позволяющее создавать и кастомизировать короткие ссылки (или шорткаты, как называют их авторы) и хранить их на сервере. 

Кроме того, у Slash есть возможность добавлять теги и группировать ссылки в коллекции. Это удобно, если работаешь с несколькими проектами (например, личными и рабочими) и хочешь их красиво систематизировать. 

Ещё одно полезное дополнение — аналитика. Можно посмотреть, как часто по ссылке переходят, откуда приходит трафик и насколько она полезна. Например, эта фишка будет очень полезна для блогеров или маркетологов. 

Получается, что Slash — это такая сокращалка на стероидах, которая также совмещает в себе фичи менеджера ссылок и закладок.

Кстати, отпишитесь в комментариях пользуетесь ли вы такими приложениями? Или по старинке сохраняете все в закладках браузера? Нам будет очень интересно почитать ваши ответы!

Где-то здесь у многих появился закономерный вопрос: зачем морочиться с размещением приложения на виртуальном сервере, если в поисковиках легко можно найти уже готовые сайты-сокращалки. Ответ простой — дело в удобстве и безопасности. Мы как пользователи не можем на 100% утверждать, что владельцы сервисов не вшивают трекеры или другое вредоносное ПО в укороченные ссылки. Поэтому, как нам кажется, лучше лишний раз не рисковать и поднять опенсорсный сервис. Так вы точно будете уверены, что с вашими сокращенными ссылками никто не покопался.

Как установить Slash 

Slash использует для работы Docker, поэтому для начала нужно будет поставить саму платформу. Я покажу, как это делается с помощью Apt. Если вам такой способ не подходит, но на сайте Докера лежат альтернативные инструкции. 

Обновляем репозитории и добавим GPG-ключи: 

apt-get update
apt-get install ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

После добавляем репозиторий в apt: 

echo \

"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \

$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \

tee /etc/apt/sources.list.d/docker.list > /dev/null

apt-get update

Далее устанавливаем сам Docker следующей командой:

apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

А вот теперь можно и поставить Slash. Хорошая новость в том, что достаточно будет одной команды: 

docker run -d --name slash -p 5231:5231 -v ~/.slash/:/var/opt/slash yourselfhosted/slash:latest

Как и раньше, для теста я использую VPS начального уровня Aluminium с одним ядром процессора Xeon E5-2697A, гигабайтом ОЗУ и SSD на 25 гигабайт.

Выполнять в терминале команды, назначения которых не особо понимаешь — не самая хорошая привычка. Поэтому подробно поясняю за каждую команд: 

  • docker run — говорит Docker создать и запустить новый контейнер.

  • -d — запускает контейнер в фоновом режиме (detached mode).

  • --name slash — задаёт контейнеру имя «slash», чтобы к нему было проще обращаться.

  • -p 5231:5231 — связывает порт 5231 контейнера с портом 5231 на хосте, чтобы можно было получить доступ к Slash через браузер.

  • -v ~/.slash/:/var/opt/slash — создаёт том для хранения данных Slash на вашей машине, чтобы они не терялись при перезапуске контейнера.

  • yourselfhosted/slash:latest — указывает, какой образ Docker использовать, в этом случае — последнюю версию Slash.

Результат выполнения команды в терминале.

Далее Slash будет доступен по адресу http://ip-вашего-сервера:5231

После от вас потребуется только зарегистрироваться — здесь все очень стандартно. 

А после регистрации вы окажетесь на главной странице сервиса. 

Как использовать Slash

Лучше всего показать возможности сервиса на примере. Для теста возьму ссылку из Википедии — https://ru.wikipedia.org/wiki/%D0%A1%D0%BA%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BE%D0%B4%D0%BD%D0%BE%D0%B9_%D1%86%D0%B5%D0%BF%D1%8C%D1%8E

Из-за кириллицы в названии текст ссылки преобразуется в не очень понятную абракадабру. В базу данных или документацию «урлу» такого вида ставить не хочется. В этом случае как раз и пригодится Slash. 

Тут все просто: 

  1. Жмем на Create.

  2. Добавляем 2 обязательных поля — Name (это имя будущей ссылки) и Link (сама ссылка)

  3. Вписываем Title и Description (это своего рода пояснения к ссылке для себя) и теги. 

В итоге у вас должна получиться ссылка формата: http://IP-адрес-сервера/s/Nau. В идеале, конечно, зарегистрировать под это дело какой-нибудь красивый адрес и подключить домен к Slash. Но это уже совсем другая история. 

Поставили бы такое приложение на свой сервер? Обязательно напишите об этом в комментариях! А если вы знаете какой-нибудь необычный self-hosted сервис, о котором мало кто знает, то тоже отпишитесь — мы посмотрим, потестируем и обязательно расскажем о нем в будущих статьях!

Комментарии (1)


  1. Sly_tom_cat
    21.01.2025 21:25

    Сокращатель ссылок в котором короткую ссылку должен придумать пользователь....
    Что делать когда больше одного пользователя хотят короткую ссылку "s/a"? И если ссылка короткая, то зачем в не фиксированный префикс?

    Я всегда думал, что сокращатель ссылок дает, пусть и не слишком удобную для запоминания (но ее и не нужно запоминать - она по идее отправляется клиенту в таком виде, что он ее открыть может в браузере на том устройстве где он ее получит), но автоматически сформированную короткую ссылку.