Jak zainstalować MoinMoin na CentOS 7

MoinMoin to oparty na systemie plików silnik wiki typu open source napisany w języku Python. Obecnie MoinMoin jest szeroko stosowany w społeczności open source. Wielu dostawców, w tym między innymi Apache, Ubuntu, Debian i Python, skonfigurowało własne strony wiki za pomocą silnika wiki MoinMoin.

W tym samouczku dowiesz się, jak skonfigurować pojedynczą witrynę wiki MoinMoin na instancji serwera CentOS 7. Aby obsługiwać MoinMoin, Nginx i uWSGI również zostaną zainstalowane.

Wymagania wstępne

Krok 1: Zainstaluj i skonfiguruj Nginx

Zanim będzie można uruchomić MoinMoin, musisz skonfigurować serwer WWW, a Nginx jest doskonałym wyborem do tego celu.

1) Dla wygody możesz zainstalować Nginx za pomocą repozytorium EPEL YUM:

sudo yum install nginx -y

2) Skonfiguruj Nginx w następujący sposób, aby mógł współpracować z uWSGI i MoinMoin.

Użyj viedytora tekstu, aby otworzyć główny plik konfiguracyjny Nginx /etc/nginx/nginx.conf:

sudo vi /etc/nginx/nginx.conf

W obrębie http { }segmentu znajdź server { }fragment, który jest poniżej:

http {

...

server {
    listen       80 default_server;
    listen       [::]:80 default_server;
    server_name  _;
    root         /usr/share/nginx/html;

    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / {
    }

...

2.1) Użyj adresu IP serwera, aby zdefiniować nazwę serwera dla Nginx:

Znajdź linię:

server_name _;

Zamień na:

server_name  203.0.113.1;

2.2) Skonfiguruj Nginx jako wykorzystujący protokół uWSGI do komunikacji:

Znajdź location / { }segment:

location / {
}

Wstaw dwie linie jak poniżej:

location / {
    uwsgi_pass unix:///run/moin/moin.sock;
    include uwsgi_params;
}

Zapisz i wyjdź:

:wq!

3) Opcjonalnie możesz przetestować zmodyfikowaną konfigurację za pomocą następującego polecenia:

sudo nginx -t

Jeśli nic nie pójdzie nie tak, wynik powinien wyglądać następująco:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

4) Na koniec uruchom usługę Nginx i włącz ją automatycznie przy starcie systemu:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Krok 2: Zainstaluj i skonfiguruj MoinMoin

1) Użyj następujących poleceń, aby zainstalować MoinMoin 1.9.9, najnowsze stabilne wydanie MoinMoin w czasie, gdy pisałem ten artykuł:

cd
wget http://static.moinmo.in/files/moin-1.9.9.tar.gz
tar -zxvf moin-1.9.9.tar.gz
cd moin-1.9.9
sudo python setup.py install --force --record=install.log --prefix='/opt/moin' --install-data=/srv

Po uruchomieniu powyższych poleceń plik wykonywalny MoinMoin i wszystkie pliki bibliotek zostaną zainstalowane w /opt/moinkatalogu, a dane użyte do zbudowania własnego wiki MoinMoin zostaną zainstalowane w /srv/share/moinkatalogu.

2) Utwórz plik konfiguracyjny o nazwie moin.wsgiw katalogu danych MoinMoin, używając pliku szablonu o tej samej nazwie:

cd /srv/share/moin/
sudo cp server/moin.wsgi moin.wsgi

Otwórz nowo utworzony plik konfiguracyjny za pomocą viedytora tekstu:

sudo vi /srv/share/moin/moin.wsgi

Znajdź następujący wiersz:

import sys, os

Dodaj następujące dwa wiersze poniżej:

sys.path.insert(0, '/opt/moin/lib/python2.7/site-packages/')
sys.path.insert(0, '/srv/share/moin/')

Zapisz i wyjdź:

:wq!

3) Utwórz kolejny plik konfiguracyjny wiki MoinMoin, który będzie używany do dostosowywania własnej wiki:

cd /srv/share/moin
sudo cp config/wikiconfig.py wikiconfig.py

W tym pliku możesz skonfigurować wiele funkcji dla wiki MoinMoin, ale na razie wystarczy skonfigurować kilka funkcji, jak poniżej.

Zdefiniuj nazwę strony (powiedz, że to jest My First Wiki):

sudo sed -i 's/Untitled Wiki/My First Wiki/' /srv/share/moin/wikiconfig.py

Zdefiniuj superużytkownika (powiedz, że to jest admin):

sudo sed -i '/#superuser/a\    superuser = [u\"admin\", ]' /srv/share/moin/wikiconfig.py

Uwaga: nadal musisz zarejestrować tego użytkownika w interfejsie internetowym MoinMoin.

Wyłącz wyszukiwanie wstecznego DNS dla przyspieszenia:

sudo sed -i '$a\    log_reverse_dns_lookups = False' /srv/share/moin/wikiconfig.py

4) Zmień własność zainstalowanych plików MoinMoin:

sudo chown -R nginx:nginx /srv/share/moin
sudo chown -R nginx:nginx /opt/moin

Krok 3: Zainstaluj i skonfiguruj uWSGI

Działając jako koncentrator między serwerem WWW Nginx a aplikacją Python, uWSGI został zaprojektowany w celu uzyskania najlepszej wydajności przy użyciu wysokowydajnego protokołu uWSGI. Następnie przyjrzyjmy się, jak zainstalować i skonfigurować uWSGI do uruchamiania MoinMoin.

1) Użyj pip, aby zainstalować uWSGI w następujący sposób:

sudo yum install -y python-devel python-setuptools python-pip gcc
sudo pip install --upgrade pip
sudo pip install uwsgi

Jeśli wszystko pójdzie dobrze, powinieneś zobaczyć wynik podobny do:

...
Successfully installed uwsgi-2.0.15

2) Po zainstalowaniu uWSGI musisz utworzyć katalog do przechowywania plików dziennika uWSGI:

sudo mkdir /var/log/uwsgi
sudo chown nginx:nginx /var/log/uwsgi

3) Ponadto musisz utworzyć katalog do przechowywania pliku gniazda MoinMoin:

sudo mkdir /run/moin
sudo chown nginx:nginx /run/moin

4) Utwórz plik konfiguracyjny uWSGI uwsgi.iniw katalogu danych wiki MoinMoin i wypełnij go w następujący sposób:

cat <<EOF | sudo tee -a /srv/share/moin/uwsgi.ini
[uwsgi]
uid = nginx
gid = nginx
socket = /run/moin/moin.sock
chmod-socket = 660
logto = /var/log/uwsgi/uwsgi.log

chdir = /srv/share/moin
wsgi-file = /srv/share/moin/moin.wsgi

master = true
processes = 3
max-requests = 200
harakiri = 30
vacuum = true
enable-threads = true
EOF

5) Aby użyć systemd do zarządzania uWSGI, musisz skonfigurować plik jednostki systemowej dla uWSGI:

cat <<EOF | sudo tee -a /etc/systemd/system/uwsgi.service
[Unit]
Description=uWSGI instance to serve MoinMoin
After=syslog.target

[Service]
ExecStart=/usr/bin/uwsgi --ini /srv/share/moin/uwsgi.ini
RuntimeDirectory=uwsgi
Restart=always
KillSignal=SIGQUIT
Type=notify
StandardError=syslog
NotifyAccess=all

[Install]
WantedBy=multi-user.target
EOF

6) Uruchom usługę uWSGI i skonfiguruj ją automatycznie przy starcie systemu:

sudo systemctl start uwsgi.service
sudo systemctl enable uwsgi.service

Krok 4: Zezwól na dostęp do sieci

Skonfiguruj reguły zapory w następujący sposób, aby użytkownicy mogli odwiedzać Twoją witrynę wiki MoinMoin za pomocą przeglądarki internetowej:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Krok 5: Uzyskaj dostęp do MoinMoin z przeglądarki internetowej

Teraz na twojej instancji serwera CentOS 7 działa jedna witryna wiki MoinMoin.

Wskaż swoją ulubioną przeglądarkę internetową http://203.0.113.1, a przejdziesz do interfejsu internetowego MoinMoin. Zarejestruj się i zaloguj jako superużytkownik admin, o którym wspominaliśmy wcześniej, a następnie będziesz mógł zarządzać swoją witryną wiki, jak chcesz.

W razie potrzeby możesz dokonać większej modyfikacji, edytując /srv/share/moin/wikiconfig.pyplik.

To kończy samouczek. Dziękuje za przeczytanie.

Zostaw komentarz

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.