Jak stworzyć własnego menedżera zakładek z linkowaniem
Linkding to prosty, ale elastyczny internetowy menedżer zakładek dla systemu Linux. Podobnie jak menedżery zakładek offline, umożliwia tworzenie i opisywanie linków internetowych, które zgromadziłeś w czasie.
W tym artykule dowiesz się, jak zainstalować Linkding na komputerze z systemem Ubuntu 22.04 przy użyciu Docker i Docker Compose. Podkreśli także, w jaki sposób możesz utworzyć użytkownika innego niż administrator i zarządzać nim w nowej instancji Linkding.
Dlaczego warto hostować własnego menedżera zakładek za pomocą linkowania?
Jedną z największych zalet Linkdingu jest to, że można go szybko wdrożyć na istniejącym serwerze i używać go w ciągu kilku minut. Oznacza to, że nie musisz udostępniać nowej maszyny, fizycznej ani innej, aby hostować własnego menedżera zakładek.
Łączenie rozszerza także podstawowe funkcje większości menedżerów zakładek, włączając udostępnianie linków i tryb wielu użytkowników. Dzięki temu jest idealnym rozwiązaniem dla użytkowników, którzy chcą stworzyć prywatną platformę współpracy w celu udostępniania łączy między grupą.
Uzyskiwanie łączenia i tworzenia Docker Compose
Aby wdrożyć Linkding, musisz najpierw zainstalować Docker wraz z jego komponentem Docker Compose. Możesz to zrobić pobierając klucz podpisywania programu ze strony programisty:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
Utwórz nowy plik repozytorium dla instalacji Dockera:
sudo nano /etc/apt/sources.list.d/docker.list
Wklej następujący wiersz kodu do nowego pliku repozytorium:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable
Załaduj ponownie repozytoria pakietów systemu, uruchamiając następującą komendę:
sudo apt update && sudo apt upgradesudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx
Uzyskiwanie i wdrażanie kontenera Docker Linkding
Utwórz nowy folder do łączenia w swoim katalogu domowym i wejdź do niego:
mkdir ~/linkding && cd ~/linkding
Użyj swojego ulubionego edytora tekstu, aby utworzyć pusty plik „docker-compose.yml”:
nano. /docker-compose.yml
Wklej następujący blok kodu do nowego pliku tworzenia wiadomości:
---
version: "3"
services:
linkding:
container_name: ${LD_CONTAINER_NAME:-linkding}
image: sissbruecker/linkding:latest
ports:
- ${LD_HOST_PORT:-9090}:9090
volumes:
- ${LD_HOST_DATA_DIR:-./data}:/etc/linkding/data
env_file:
-. env
restart: unless-stopped
Zapisz nowy plik docker-compose.yml, a następnie utwórz plik środowiska dla swojej instancji. Będzie zawierać wszystkie zmienne niestandardowe dla Twojej nowej instalacji:
nano ~/linkding/.env
Wklej następujący blok kodu do nowego pliku środowiska:
LD_CONTAINER_NAME="linkding"LD_HOST_PORT="9090"LD_HOST_DATA_DIR="./data"LD_SUPERUSER_NAME="linkding"# CHANGE WITH A SECURE USERNAMELD_SUPERUSER_PASSWORD="linkding"# CHANGE WITH A SECURE PASSWORDLD_DISABLE_BACKGROUND_TASKS="False"LD_DISABLE_URL_VALIDATION="False"LD_ENABLE_AUTH_PROXY="False"LD_CSRF_TRUSTED_ORIGINS="https://linkding.your-domain-name.here"
Na koniec zbuduj nowy kontener Docker, uruchamiając następujące polecenie:
docker compose up -d
Tworzenie odwrotnego proxy Nginx dla SSL
W tym momencie masz już działającą instancję Linkding działającą na porcie 9090. Aby jednak móc uzyskać do niej publiczny dostęp, musisz utworzyć odwrotne proxy , które będzie zabezpieczać połączenia przychodzące za pomocą protokołu SSL.
Utwórz nowy plik konfiguracyjny witryny dla swojej instancji:
sudo nano /etc/nginx/sites-available/linkding
Wklej następujący blok kodu do pliku nowej witryny:
server {
listen 80;
listen [::]:80;
root /var/www/html;
server_name linkding.your-domain-name.here;
location / {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:9090;
}}
Usuń domyślny plik konfiguracyjny witryny i utwórz dowiązanie symboliczne do nowego pliku konfiguracyjnego do „/etc/nginx/sites-enabled”:
sudo rm /etc/nginx/default
sudo ln -s /etc/nginx/sites-available/linkding /etc/nginx/sites-enabled/linkding
Uruchom i włącz demona Nginx, aby zastosował nowe ustawienia:
sudo systemctl restart nginx
sudo systemctl enable --now nginx
Włączanie SSL dla Twojej instancji łączenia
Upewnij się, że na komputerze jest zainstalowany najnowszy plik binarny Core Snap:
sudo snap install core
Zainstaluj pakiet przystawek Certbot firmy Electronic Frontier Foundation (EFF):
sudo snap install certbot --classic
Sprawdź, czy Twoja instalacja certbota działa poprawnie, rejestrując ją w EFF:
sudo certbot register --agree-tos -m ramces@email.invalid
Poproś o certyfikat SSL dla swojej instancji, uruchamiając następującą komendę:
sudo certbot --nginx -d linkding.your-domain-name.here
Sprawdź, czy Twoja nowa instancja jest bezpieczna i działa, ładując jej adres w przeglądarce internetowej.
Tworzenie nowego użytkownika w linkowaniu
Zaloguj się do swojej nowej instancji Linkding, korzystając z danych uwierzytelniających superużytkownika podanych w pliku „.env”.
Kliknij link „Ustawienia” w prawym górnym rogu strony.
Kliknij zakładkę „Administracja” na stronie ustawień Linkding. Spowoduje to wyświetlenie panelu administratora łączenia.
Aby dodać nowego użytkownika, kliknij link „Dodaj” obok wiersza Użytkownicy w kategorii „Uwierzytelnianie i autoryzacja”.
Podaj nazwę użytkownika i hasło dla nowego użytkownika Linkding, a następnie kliknij „Zapisz”, aby aktywować nowego użytkownika.
Sprawdź, czy Twój nowy użytkownik działa poprawnie, logując się do niego poprzez inną sesję przeglądarki.
Wyłączanie istniejącego użytkownika w łączeniu
Aby wyłączyć istniejącego użytkownika w Linkdingu, przejdź do panelu administracyjnego swojej instancji, a następnie wybierz link „Użytkownicy” w kategorii „Uwierzytelnianie i Autoryzacja”.
Kliknij nazwę użytkownika, którą chcesz wyłączyć. Spowoduje to załadowanie profilu tego konkretnego użytkownika.
Przewiń w dół do kategorii „Uprawnienia”, a następnie odznacz pole wyboru obok etykiety „Aktywne”.
Przewiń w dół strony, a następnie kliknij „Zapisz”, aby całkowicie wyłączyć użytkownika.
Często Zadawane Pytania
Czy możesz zainstalować Linkding bez użycia Dockera?
Nie. Twórcy Linkding zaprojektowali go tak, aby działał tylko z kontenerami Docker. Dzieje się tak dlatego, że program ma wiele współzależności, które należy wdrożyć w określonej kolejności i w określony sposób, aby działał poprawnie.
Czy można zaimportować istniejące zakładki do Linkdingu?
Tak. Istnieje możliwość importu listy zakładek z innych zewnętrznych menadżerów zakładek. Możesz na przykład skopiować swoje zakładki z Google Chrome i Microsoft Edge bezpośrednio do Linkding.
Czy można wykonać kopię zapasową bazy danych Linkding poza Dockerem?
Tak. Istnieją dwa sposoby tworzenia kopii zapasowych bazy danych Linkding z jej kontenera Docker. Najpierw możesz przejść do strony Ustawienia, a następnie przejść do kategorii „Eksport” w zakładce „Ogólne”. Pod tym kliknij przycisk „Pobierz”, aby wykonać kopię zapasową zakładek bieżącego użytkownika.
Po drugie, możesz zalogować się do swojego serwera Linkding i skopiować plik „db.sqlite3” do katalogu „~/linkding/data”. Zaletą tego podejścia w porównaniu z pierwszym jest to, że plik „db.sqlite3″ zawiera całą bazę danych zakładek dla całej instancji.
Źródło obrazu: Lauren Mancke za pośrednictwem Unsplash (tło) Łączenie z Github (logo). Wszystkie zmiany i zrzuty ekranu wykonał Ramces Red.
Dodaj komentarz