Привет! На связи Игорь из техподдержки 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.
Тут все просто:
Жмем на Create.
Добавляем 2 обязательных поля — Name (это имя будущей ссылки) и Link (сама ссылка)
Вписываем Title и Description (это своего рода пояснения к ссылке для себя) и теги.
В итоге у вас должна получиться ссылка формата: http://IP-адрес-сервера/s/Nau. В идеале, конечно, зарегистрировать под это дело какой-нибудь красивый адрес и подключить домен к Slash. Но это уже совсем другая история.
Поставили бы такое приложение на свой сервер? Обязательно напишите об этом в комментариях! А если вы знаете какой-нибудь необычный self-hosted сервис, о котором мало кто знает, то тоже отпишитесь — мы посмотрим, потестируем и обязательно расскажем о нем в будущих статьях!
Sly_tom_cat
Сокращатель ссылок в котором короткую ссылку должен придумать пользователь....
Что делать когда больше одного пользователя хотят короткую ссылку "s/a"? И если ссылка короткая, то зачем в не фиксированный префикс?
Я всегда думал, что сокращатель ссылок дает, пусть и не слишком удобную для запоминания (но ее и не нужно запоминать - она по идее отправляется клиенту в таком виде, что он ее открыть может в браузере на том устройстве где он ее получит), но автоматически сформированную короткую ссылку.