Wiki.js to nowoczesna, open-source’owa platforma wiki, która oferuje intuicyjny interfejs, bogate możliwości edycji i łatwą integrację z różnymi systemami. W tym artykule pokażemy, jak zainstalować Wiki.js na serwerze z systemem Debian 12, korzystając z dwóch popularnych metod: ręcznej instalacji z użyciem Ansible oraz instalacji z wykorzystaniem Dockera. Artykuł jest szczegółowy i obejmuje wszystkie kroki, aby umożliwić Ci uruchomienie Wiki.js w sposób profesjonalny i bezproblemowy.
Wymagania wstępne
Zanim zaczniemy, upewnij się, że masz przygotowane następujące elementy:
- Serwer z systemem Debian 12 (zalecane minimum: 2 GB RAM, 2 rdzenie CPU).
- Użytkownik z uprawnieniami root lub sudo.
- Zainstalowany SSH dla zdalnego dostępu.
- Połączenie internetowe.
- Podstawowa znajomość terminala Linux.
- (Opcjonalnie dla Ansible) Zainstalowany Ansible na maszynie kontrolnej.
- (Opcjonalnie dla Dockera) Zainstalowany Docker i Docker Compose.
Uwaga: Wszystkie polecenia w tym artykule zakładają, że pracujesz jako użytkownik z uprawnieniami sudo. Upewnij się, że serwer jest zaktualizowany przed rozpoczęciem instalacji.
Metoda 1: Ręczna instalacja z użyciem Ansible
Ansible to narzędzie do automatyzacji, które pozwala na łatwe zarządzanie konfiguracją serwerów. Poniżej znajdziesz szczegółowy playbook Ansible do instalacji Wiki.js, wraz z wyjaśnieniem każdego kroku.
Krok 1: Przygotowanie serwera
Zaloguj się na serwer Debian 12 przez SSH i zaktualizuj system:
sudo apt update && sudo apt upgrade -y
Krok 2: Instalacja Ansible na maszynie kontrolnej
Jeśli Ansible nie jest zainstalowany na Twojej maszynie kontrolnej, zainstaluj go:
sudo apt install ansible -y
Krok 3: Przygotowanie playbooka Ansible
Stwórz plik playbooka Ansible o nazwie wiki_js_install.yml
. Poniżej znajduje się pełny playbook instalujący Node.js, PostgreSQL i Wiki.js:
---
- hosts: wiki_servers
become: true
vars:
wiki_js_version: "2.5.299"
node_version: "18.x"
postgres_version: "15"
tasks:
- name: Aktualizacja systemu
apt:
update_cache: yes
upgrade: dist
- name: Instalacja wymaganych pakietów
apt:
name:
- curl
- git
- gnupg
state: present
- name: Dodanie repozytorium Node.js
shell: curl -fsSL https://deb.nodesource.com/setup_{{ node_version }} | bash -
- name: Instalacja Node.js
apt:
name: nodejs
state: present
- name: Dodanie klucza GPG dla PostgreSQL
apt_key:
url: https://www.postgresql.org/media/keys/ACCC4CF8.asc
state: present
- name: Dodanie repozytorium PostgreSQL
apt_repository:
repo: deb http://apt.postgresql.org/pub/repos/apt/ bullseye-pgdg main
state: present
- name: Instalacja PostgreSQL
apt:
name: postgresql-{{ postgres_version }}
state: present
- name: Uruchomienie i włączenie PostgreSQL
systemd:
name: postgresql
enabled: yes
state: started
- name: Utworzenie bazy danych dla Wiki.js
become_user: postgres
postgresql_db:
name: wikijs
- name: Utworzenie użytkownika bazy danych dla Wiki.js
become_user: postgres
postgresql_user:
db: wikijs
name: wikijs
password: "TwojeSilneHaslo123"
- name: Pobranie Wiki.js
get_url:
url: https://github.com/Requarks/wiki/releases/download/v{{ wiki_js_version }}/wiki-js.tar.gz
dest: /tmp/wiki-js.tar.gz
- name: Rozpakowanie Wiki.js
unarchive:
src: /tmp/wiki-js.tar.gz
dest: /opt/wiki
remote_src: yes
- name: Instalacja zależności Wiki.js
npm:
path: /opt/wiki
state: present
- name: Skopiowanie pliku konfiguracyjnego
template:
src: config.sample.yml
dest: /opt/wiki/config.yml
mode: '0644'
- name: Uruchomienie Wiki.js jako usługi
systemd:
name: wiki
enabled: yes
state: started
daemon_reload: yes
notify: restart_wiki
handlers:
- name: restart_wiki
systemd:
name: wiki
state: restarted
Krok 4: Konfiguracja pliku hosts Ansible
Edytuj plik /etc/ansible/hosts
, aby dodać swój serwer:
[wiki_servers]
your_server_ip ansible_user=your_ssh_user ansible_ssh_private_key_file=/path/to/your/key
Zastąp your_server_ip
adresem IP serwera, a your_ssh_user
nazwą użytkownika SSH.
Krok 5: Uruchomienie playbooka
Uruchom playbook Ansible:
ansible-playbook wiki_js_install.yml
Krok 6: Konfiguracja Wiki.js
Po instalacji otwórz plik /opt/wiki/config.yml
i skonfiguruj połączenie z bazą danych oraz inne ustawienia, takie jak port (domyślnie 3000). Następnie uruchom Wiki.js:
node /opt/wiki/server
Dostęp do Wiki.js uzyskasz, wpisując w przeglądarce: http://your_server_ip:3000
.
Metoda 2: Instalacja z użyciem Dockera
Docker to świetny sposób na uruchomienie Wiki.js w izolowanym środowisku. Poniżej znajdziesz kroki do instalacji z użyciem Docker Compose.
Krok 1: Instalacja Dockera i Docker Compose
Zainstaluj Docker i Docker Compose na serwerze:
sudo apt update
sudo apt install docker.io docker-compose -y
sudo systemctl start docker
sudo systemctl enable docker
Krok 2: Przygotowanie pliku Docker Compose
Stwórz plik docker-compose.yml
w katalogu roboczym:
version: "3"
services:
wiki:
image: requarks/wiki:2
depends_on:
- db
environment:
- DB_TYPE=postgres
- DB_HOST=db
- DB_PORT=5432
- DB_USER=wikijs
- DB_PASS=TwojeSilneHaslo123
- DB_NAME=wikijs
ports:
- "3000:3000"
restart: unless-stopped
db:
image: postgres:15
environment:
- POSTGRES_DB=wikijs
- POSTGRES_USER=wikijs
- POSTGRES_PASSWORD=TwojeSilneHaslo123
volumes:
- wiki_db_data:/var/lib/postgresql/data
restart: unless-stopped
volumes:
wiki_db_data:
Krok 3: Uruchomienie Wiki.js w Dockerze
Uruchom kontenery za pomocą Docker Compose:
docker-compose up -d
Wiki.js będzie dostępne pod adresem http://your_server_ip:3000
.
Krok 4: Konfiguracja i dostęp
Po uruchomieniu otwórz przeglądarkę i przejdź do http://your_server_ip:3000
. Postępuj zgodnie z instrukcjami kreatora instalacji Wiki.js, aby skonfigurować administratora i podstawowe ustawienia.
Porównanie metod
- Ansible: Idealne dla tych, którzy chcą automatyzować i zarządzać wieloma serwerami. Wymaga więcej konfiguracji, ale daje większą kontrolę nad środowiskiem.
- Docker: Szybkie i łatwe w konfiguracji, idealne dla izolowanych środowisk i szybkiego wdrożenia. Mniej elastyczne w przypadku niestandardowych konfiguracji.
Rozwiązywanie problemów
- Jeśli Wiki.js nie działa, sprawdź logi:
docker logs wiki
(dla Dockera) lubjournalctl -u wiki
(dla Ansible). - Upewnij się, że port 3000 jest otwarty w zaporze:
sudo ufw allow 3000
. - Sprawdź, czy PostgreSQL działa poprawnie:
sudo systemctl status postgresql
.
Podsumowanie
Zainstalowanie Wiki.js na Debian 12 jest proste dzięki narzędziom takim jak Ansible i Docker. Ansible oferuje większą kontrolę i automatyzację, podczas gdy Docker zapewnia szybkość i łatwość wdrożenia. Wybierz metodę, która najlepiej odpowiada Twoim potrzebom, i ciesz się nowoczesnym systemem wiki!