1. Strona główna
  2. Blog
  3. Hosting

Jak hostować edytor Markdown na hostingu współdzielonym, w Docker lub nginx

Uruchom własny edytor Markdown z podglądem na żywo w kilka minut. Krok po kroku: hosting (cPanel), Docker, nginx i Caddy — bez bazy danych i backendu.

Edytor Markdown na własnym serwerze daje zespołowi jedno, dobrze znane narzędzie we własnej domenie — bez kont, bez subskrypcji i bez uzależnienia od tego, czy cudza usługa nadal działa. Jeśli edytor jest statyczną aplikacją internetową, jego hostowanie jest tak proste jak hostowanie kilku plików HTML: nie ma bazy danych do utrzymania, kodu po stronie serwera do aktualizowania i praktycznie żadnego obciążenia serwera.

W tym poradniku przykładem jest Markdown Preview Editor. Jest darmowy i open source (MIT), a te same kroki sprawdzą się przy każdej statycznej aplikacji internetowej.

Po co hostować edytor Markdown samodzielnie?

  • Twoja domena, Twoje zasady. Edytor jest dostępny pod adresem, który kontrolujesz, na przykład markdown.your-company.com, i działa tak samo dla wszystkich, którzy z niego korzystają.
  • Nic do utrzymywania. Strona statyczna nie ma backendu, więc nie ma poprawek bezpieczeństwa kodu serwerowego ani kopii zapasowych bazy danych.
  • Dokumenty pozostają lokalne. Markdown Preview Editor renderuje wszystko w przeglądarce odwiedzającego. Serwer tylko dostarcza pliki aplikacji — nigdy nie otrzymuje dokumentów.
  • Utrzymanie nic nie kosztuje. Wystarczy dowolny hosting współdzielony, mały VPS lub platforma kontenerowa.

Czego potrzebujesz

Dowolnego serwera WWW, który potrafi serwować pliki statyczne przez HTTPS:

  • hostingu współdzielonego z cPanel, Plesk lub DirectAdmin (Apache lub LiteSpeed),
  • serwera z Docker,
  • nginx lub Caddy na VPS,
  • a nawet własnego komputera do użytku lokalnego.

Na serwerze nie jest potrzebny PHP, Node.js ani baza danych.

Opcja 1: Hosting współdzielony (cPanel i podobne)

To najszybsza droga, która nie wymaga wiersza poleceń.

  1. Pobierz archiwum strony. Pobierz markdown-preview-editor-site.zip z najnowszego wydania. Zawiera gotową, zbudowaną stronę.
  2. Wybierz adres. Użyj głównej domeny lub utwórz w panelu hostingu subdomenę, taką jak markdown.example.com. Zanotuj folder główny subdomeny (document root).
  3. Włącz HTTPS. Większość hostingów automatycznie wystawia darmowe certyfikaty (AutoSSL lub Let’s Encrypt). Upewnij się, że certyfikat jest aktywny dla domeny lub subdomeny.
  4. Wgraj i rozpakuj. Otwórz Menedżer plików, przejdź do folderu głównego, wgraj plik zip i wybierz Rozpakuj. Pliki — w tym ukryty .htaccess — muszą znaleźć się bezpośrednio w folderze głównym, a nie w podfolderze.
  5. Otwórz swoją domenę. Edytor jest gotowy.

Dołączony plik .htaccess przekierowuje HTTP na HTTPS, ustawia nagłówki bezpieczeństwa i konfiguruje pamięć podręczną na serwerach Apache i LiteSpeed.

Wskazówka

Jeśli skaner plików Twojego hostingu odrzuca archiwa zip zawierające pliki JavaScript — to znany fałszywy alarm niektórych reguł antywirusowych — użyj archiwum .tar.gz z tego samego wydania lub wgraj pliki przez FTP.

Opcja 2: Docker

Jeśli korzystasz z kontenerów, sklonuj repozytorium i uruchom dołączony plik Compose:

bashgit clone https://github.com/ovasendin/markdown_preview_editor.git
cd markdown_preview_editor
PORT=8080 docker compose -f deploy/docker-compose.yml up -d --build

Otwórz http://localhost:8080 — lub port, który wybrałeś. Obraz buduje stronę i serwuje ją przez nginx z tymi samymi nagłówkami bezpieczeństwa. W przypadku publicznej domeny umieść kontener za swoim zwykłym reverse proxy z HTTPS.

Opcja 3: nginx

Zbuduj stronę (lub rozpakuj archiwum z wydania) i skopiuj pliki do katalogu głównego serwera WWW:

bashnpm ci && npm run build
sudo cp -r dist/* /var/www/markdown/

Repozytorium zawiera gotową konfigurację w deploy/nginx.conf z nagłówkami bezpieczeństwa i regułami pamięci podręcznej. Rdzeń konfiguracji strony statycznej jest krótki:

nginxserver {
    listen 443 ssl;
    server_name markdown.example.com;
    # tutaj wstaw wiersze ssl_certificate i ssl_certificate_key

    root /var/www/markdown;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

Przeładuj nginx poleceniem sudo nginx -s reload i otwórz domenę.

Opcja 4: Caddy

Caddy automatycznie uzyskuje certyfikaty HTTPS, co czyni go najprostszą opcją na VPS:

bashSITE_ADDRESS=markdown.example.com caddy run --config deploy/Caddyfile

Najpierw skopiuj zbudowane pliki do /srv; dołączony Caddyfile serwuje je z tymi samymi nagłówkami co pozostałe opcje.

Opcja 5: Uruchomienie lokalne

Do użytku osobistego w ogóle nie potrzebujesz serwera:

bashnpm ci
npm run dev

Otwórz w przeglądarce wyświetlony adres lokalny.

Aktualizacje

Aktualizacja strony statycznej polega na podmianie jej plików. Pobierz archiwum nowego wydania, rozpakuj je na stare pliki i przeładuj stronę. Ponieważ nazwy plików aplikacji zawierają skróty (hashe) zawartości, przeglądarki pobierają nową wersję bez problemów z nieaktualną pamięcią podręczną. Obserwuj repozytorium na GitHub (Watch → Custom → Releases), aby otrzymywać powiadomienia o nowych wersjach.

Lista kontrolna po wdrożeniu

  • Strona otwiera się przez https://, a http:// przekierowuje na HTTPS.
  • Przeciągnij plik Markdown na edytor — otworzy się w nowej karcie.
  • Zmień motyw i język w ustawieniach.
  • Wyeksportuj dokument testowy do HTML, aby sprawdzić, czy pobieranie działa.

Gdy Twój edytor już działa, udostępnij zespołowi ściągawkę Markdown i dodaj do zakładek nasze poradniki o podglądzie Markdown oraz eksporcie do HTML i PDF.

Najczęściej zadawane pytania

Czy mogę hostować edytor Markdown na hostingu współdzielonym?

Tak. Statyczny edytor Markdown, taki jak Markdown Preview Editor, to po prostu pliki HTML, CSS i JavaScript. Wgraj i rozpakuj archiwum wydania do folderu głównego domeny lub subdomeny — nie potrzebujesz bazy danych ani języka po stronie serwera.

Czy edytor na własnym serwerze wysyła dokumenty na mój serwer?

Nie. Serwer tylko dostarcza pliki aplikacji. Dokumenty są otwierane i renderowane w przeglądarce każdego odwiedzającego i nie są nigdzie wysyłane.

Czy mogę umieścić go w podfolderze zamiast w subdomenie?

Tak, aplikacja działa w podfolderze, takim jak example.com/markdown/. Zalecamy jednak osobną subdomenę, ponieważ oddziela ona magazyn przeglądarki edytora od innych aplikacji w tej samej domenie.

Ile zasobów serwera potrzebuje?

Prawie żadnych. Serwer wysyła pliki statyczne tylko raz na odwiedzającego; potem są one przechowywane w pamięci podręcznej przeglądarki. Cała praca odbywa się na urządzeniu odwiedzającego.