Fedora 28 Wiki.js Nasıl Kurulur

Wiki.js , Node.js, MongoDB, Git ve Markdown üzerine kurulmuş ücretsiz ve açık kaynaklı, modern bir wiki uygulamasıdır. Wiki.js kaynak kodu genel barındırılan Github . Bu kılavuz, Node.js, MongoDB, PM2, Nginx, Git ve Acme.sh kullanarak Wiki.js'yi yeni bir Fedora 28 Vultr örneğine nasıl yükleyeceğinizi gösterecektir.

Gereksinimler

Wiki.js'yi çalıştırmak için gereksinimler şunlardır:

  • Node.js sürüm 6.9.0 veya üstü
  • MongoDB sürüm 3.2 veya üzeri
  • Nginx, Apache, IIS, Caddy veya H2O gibi bir web sunucusu. Bu kılavuzda Nginx kullanılacaktır
  • Git sürüm 2.7.4 veya üstü
  • Git uyumlu bir depo (genel veya özel) Bu isteğe bağlıdır
  • Minimum 768 MB RAM
  • A/ AAAAKayıtlar ayarlanmış alan adı

Sen başlamadan önce

İşletim sistemi sürümünü kontrol edin.

cat /etc/fedora-release
# Fedora release 28 (Twenty Eight)

Sudo erişimi olan yeni bir kök olmayan kullanıcı hesabı oluşturun ve bu hesaba geçin.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

NOT: Kullanıcı adınızla değiştirin johndoe.

Sisteminizin güncel olduğundan emin olun.

sudo dnf check-upgrade || sudo dnf upgrade -y

Saat dilimini ayarlayın.

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Gerekli ve kullanışlı paketleri yükleyin.

sudo dnf install -y wget vim unzip bash-completion git

Basitlik için SELinux ve Güvenlik Duvarını devre dışı bırakın.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Node.js dosyasını yükleyin

Wiki.js, Node.js 6.9.0 veya üst sürümünü gerektirir, bu yüzden önce Node.js dosyasını yüklememiz gerekir.

Node.js'yi yükleyin.

sudo dnf install -y nodejs

Node.js ve npm sürümlerini kontrol edin.

node -v && npm -v
# v8.11.3
# 5.6.0

MongoDB'yi yükleyin

Wiki.js, veritabanı motoru olarak MongoDB'yi kullanır. Buna göre, sunucumuza MongoDB yüklememiz gerekecek.

MongoDB'yi yükleyin.

sudo dnf install -y mongodb mongodb-server

MongoDB sürümünü kontrol edin.

mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v3.6.3
# db version v3.6.3

MongoDB'yi etkinleştirin ve başlatın.

sudo systemctl enable mongod.service
sudo systemctl start mongod.service

Nginx'i yükleme ve yapılandırma

Wiki.js, gerçek bir web sunucusu (Nginx veya Apache gibi) olmadan çalışabilir. Ancak, Wiki.js'nin önüne standart bir web sunucusu koymanız önemle tavsiye edilir. Bu, SSL, birden çok web sitesi, önbellekleme ve diğerleri gibi özellikleri kullanabilmenizi sağlar. Bu öğreticide Nginx kullanacağız, ancak başka herhangi bir sunucu yapacak, sadece doğru bir şekilde yapılandırmanız gerekiyor.

Nginx'i yükleyin.

sudo dnf install -y nginx

Versiyonu kontrol et.

nginx -v
# nginx version: nginx/1.12.1

Nginx'i etkinleştirin ve başlatın.

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

Bir şekilde yapılandır Nginx HTTPveya HTTPS(SSL kullanan varsa) Wiki.js uygulama için ters vekil.

sudo vim /etc/nginx/conf.d/wiki.js.confAşağıdaki temel ters proxy yapılandırmasıyla çalıştırın ve doldurun.

server {

    listen [::]:80;
    listen 80;

    server_name wiki.example.com;

    root /usr/share/nginx/html;

    charset utf-8;
    client_max_body_size 50M;

    location /.well-known/acme-challenge/ {
        allow all;
    }

    location / {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_pass http://127.0.0.1:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_next_upstream error timeout http_502 http_503 http_504;
    }

}

Yukarıdaki yapılandırmada değiştirmeniz gereken tek şey server_nameyönerge ve proxy_passbaşka bir bağlantı noktası yapılandırmaya karar verirseniz direktiftir 3000. Wiki.js 3000varsayılan olarak bağlantı noktasını kullanır .

Yapılandırmayı kontrol edin.

sudo nginx -t

Nginx'i yeniden yükleyin.

sudo systemctl reload nginx.service

Acme.sh istemcisini yükleyin ve Let's Encrypt sertifikası edinin (isteğe bağlı)

Wiki'nizi güvenli hale getirmek HTTPSgerekli değildir, ancak site trafiğinizi güvence altına almak için iyi bir uygulamadır. Let's Encrypt'ten bir SSL sertifikası almak için Acme.sh istemcisini kullanacağız. Acme.sh sıfır bağımlılık ile Let's Encrypt SSL sertifikaları almak için saf bir unix kabuk yazılımıdır. Bu, başarılı bir şekilde çalışması için çok fazla bağımlılık gerektiren diğer ACME protokol istemcileriyle karşılaştırıldığında çok hafif olmasını sağlar.

Acme.sh dosyasını indirin ve yükleyin .

sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
cd ~

acme.shSürümü kontrol edin .

/etc/letsencrypt/acme.sh --version
# v2.7.9

İçin RSA ve ECDSA sertifikaları alın wiki.example.com.

# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d wiki.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d wiki.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --keylength ec-256 

Yukarıdaki komutları çalıştırdıktan sonra sertifikalarınız ve anahtarlarınız şurada olacaktır:

  • RSA için: /etc/letsencrypt/wiki.example.com
  • ECC / ECDSA için: /etc/letsencrypt/wiki.example.com_ecc

NOT : Alan adınızla değiştirmeyi unutmayın wiki.example.com.

Let's Encrypt'ten sertifika aldıktan sonra, Nginx'i bunlardan yararlanacak şekilde yapılandırmamız gerekiyor.

sudo vim /etc/nginx/conf.d/wiki.js.confTekrar çalıştırın ve Nginx'i HTTPSters proxy olarak yapılandırın .

server {

    listen [::]:443 ssl http2;
    listen 443 ssl http2;
    listen [::]:80;
    listen 80;

    server_name wiki.example.com;

    root /usr/share/nginx/html;

    charset utf-8;
    client_max_body_size 50M;

    location /.well-known/acme-challenge/ {
        allow all;
    }

    # RSA
    ssl_certificate /etc/letsencrypt/wiki.example.com/fullchain.cer;
    ssl_certificate_key /etc/letsencrypt/wiki.example.com/wiki.example.com.key;
    # ECDSA
    ssl_certificate /etc/letsencrypt/wiki.example.com_ecc/fullchain.cer;
    ssl_certificate_key /etc/letsencrypt/wiki.example.com_ecc/wiki.example.com.key;

    location / {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_pass http://127.0.0.1:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_next_upstream error timeout http_502 http_503 http_504;
    }

}

Yapılandırmayı kontrol edin.

sudo nginx -t

Nginx'i yeniden yükleyin.

sudo systemctl reload nginx.service

Wiki.js'yi yükleyin

Wiki.js dosyasının yüklenmesi gereken boş bir belge kök klasörü oluşturun.

sudo mkdir -p /var/www/wiki.example.com

Belge kök klasörüne gidin.

cd /var/www/wiki.example.com

/var/www/wiki.example.comKlasörün sahipliğini kullanıcı olarak değiştirin johndoe.

sudo chown -R johndoe:johndoe /var/www/wiki.example.com

Gönderen /var/www/wiki.example.comklasörde, Wiki.js. indirmek için aşağıdaki komutu çalıştırın ve yükleyin

curl -sSo- https://wiki.js.org/install.sh | bash

Yüklü olan Wiki.js sürümünü görüntülemek için aşağıdaki komutu çalıştırabilirsiniz.

node wiki --version
# 1.0.78

Yükleme tamamlandığında, yapılandırma sihirbazını çalıştırmanız istenir.

Yapılandırma sihirbazını çalıştırarak başlatın.

node wiki configure

Bu, http://localhost:3000Wiki.js'yi yapılandırmak için gitmenizi bildirir. Wiki.js'nin önünde Nginx varsa, o zaman etki alanı adınızı (örneğin http://wiki.example.com) açmak yerine açabileceğiniz anlamına gelir localhost.

Web tarayıcınızı kullanarak http://wiki.example.comekrandaki talimatlara gidin ve izleyin. Yapılandırma sihirbazı sırasında girilen tüm ayarlar config.ymldosyaya kaydedilir . Yapılandırma sihirbazı sizin için Wiki.js'yi otomatik olarak başlatır.

PM2 Kurulumu

Varsayılan olarak, bir sistem yeniden başlatıldıktan sonra Wiki.js otomatik olarak başlamaz. Önyüklemede başlayabilmesi için PM2 süreç yöneticisini kurmamız gerekiyor. PM2, yerel NPM modülü olarak Wiki.js ile birlikte gelir, bu nedenle PM2'yi global olarak yüklememize gerek yoktur.

PM2'ye çalışarak kendisini bir başlangıç ​​hizmeti olarak yapılandırmasını söyleyin:

/var/www/wiki.example.com/node_modules/pm2/bin/pm2 startup

Son olarak, şu PM2 yapılandırmasını şu komutu çalıştırarak kaydedin: /var/www/wiki.example.com/node_modules/pm2/bin/pm2 save

Wiki.js örneğiniz, işlem yöneticisi olarak PM2'yi kullanarak arka plan işlemi olarak çalışır.



Bir Fedora 26 LAMP VPSye Directus 6.4 CMS Yükleme

Bir Fedora 26 LAMP VPSye Directus 6.4 CMS Yükleme

Farklı Bir Sistem mi Kullanıyorsunuz? Directus 6.4 CMS, geliştirici sağlayan güçlü ve esnek, ücretsiz ve açık kaynaklı Başsız İçerik Yönetim Sistemidir (CMS)

Bir Fedora 26 LAMP VPS Üzerine Macun 2.1 Kurulumu

Bir Fedora 26 LAMP VPS Üzerine Macun 2.1 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Paste 2.1, kod, metin ve daha fazlasını depolamak için basit ve esnek, ücretsiz ve açık kaynaklı bir macun uygulamasıdır. İnterall

Subrion 4.1 CMSyi Fedora 26 LAMP VPSye Yükleme

Subrion 4.1 CMSyi Fedora 26 LAMP VPSye Yükleme

Farklı Bir Sistem mi Kullanıyorsunuz? Subrion 4.1 CMS, sezgisel ve net bir içerik getiren güçlü ve esnek bir açık kaynaklı İçerik Yönetim Sistemidir (CMS)

Fedora 30 Üzerinde osTicket Kurulumu

Fedora 30 Üzerinde osTicket Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? osTicket açık kaynaklı bir müşteri destek bilet sistemidir. osTicket kaynak kodu Githubda herkese açık olarak barındırılmaktadır. Bu öğreticide

Bir Fedora 26 LAMP VPS Üzerine TextPattern CMS 4.6.2 Kurulumu

Bir Fedora 26 LAMP VPS Üzerine TextPattern CMS 4.6.2 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? TextPattern CMS 4.6.2, web tasarımcılarına izin veren basit, esnek, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)

Fedora 28 Grav CMS Kurulumu

Fedora 28 Grav CMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Grav, PHP ile yazılmış açık kaynaklı bir düz dosya CMSdir. Grav kaynak kodu GitHubda herkese açık olarak barındırılıyor. Bu kılavuz size

Fedora 28 Osclass Kurulumu

Fedora 28 Osclass Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Osclass, herhangi bir teknik bilgi olmadan kolayca sınıflandırılmış bir site oluşturmanıza izin veren açık kaynaklı bir projedir. Onun kaynağı

Fedora 26 LAMP VPSye BigTree CMS Kurulumu

Fedora 26 LAMP VPSye BigTree CMS Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? BigTree CMS 4.2 hızlı ve hafif, ücretsiz ve açık kaynak kodlu, kurumsal düzeyde bir içerik yönetim sistemidir (CMS)

Fedora 28e AWStats Kurulumu

Fedora 28e AWStats Kurulumu

AWStats web trafiğini analiz etmek için yararlı bir araçtır. HTML arayüzüne tarayıcı üzerinden erişilebilir, bu da sizi kimin görüntülediğiyle ilgili kolay bilgiler verir

Fedora 29a HTMLDoc yükleyin

Fedora 29a HTMLDoc yükleyin

Farklı Bir Sistem mi Kullanıyorsunuz? HTMLDoc, Postscript (PDF 1.6) belgelerini doğru yazılmış Köprü Metninden (HTML 3.2) dinamik olarak ayrıştırır. Bu size t

Fedora 26 LAMP VPSye Couch CMS 2.0 Kurulumu

Fedora 26 LAMP VPSye Couch CMS 2.0 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Couch CMS, web tasarımcılarının tasarlamalarını sağlayan basit ve esnek, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)

Linuxta MyCLI Kurulumu (CentOS, Debian, Fedora ve Ubuntu)

Linuxta MyCLI Kurulumu (CentOS, Debian, Fedora ve Ubuntu)

Giriş MyCLI, MySQL ve MariaDB için otomatik tamamlamanızı sağlayan ve SQL komutlarınızın sözdizimine yardımcı olan bir komut satırı istemcisidir. MyCL

Fedora 30 Üzerinde Görev Panosu Nasıl Yüklenir ve Yapılandırılır

Fedora 30 Üzerinde Görev Panosu Nasıl Yüklenir ve Yapılandırılır

Farklı Bir Sistem mi Kullanıyorsunuz? Giriş TaskBoard, yapılması gereken şeyleri takip etmek için kullanılabilen ücretsiz ve açık kaynaklı bir araçtır. Sağlar

Neos CMSyi Fedora 28e Yükleme

Neos CMSyi Fedora 28e Yükleme

Farklı Bir Sistem mi Kullanıyorsunuz? Neos, CMSsi ve özünde bir uygulama çerçevesi olan bir içerik uygulama platformudur. Bu kılavuz size nasıl kurulum yapacağınızı gösterecektir.

Fedora 31 Üzerinde X-Cart 5 Kurulumu

Fedora 31 Üzerinde X-Cart 5 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? X-Cart, tonlarca özellik ve entegrasyona sahip son derece esnek bir açık kaynaklı e-ticaret platformudur. X-Cart kaynak kodu aceleci

Fedora 26 LAMP VPS Küçük Tiny RSS Okuyucu Nasıl Kurulur

Fedora 26 LAMP VPS Küçük Tiny RSS Okuyucu Nasıl Kurulur

Farklı Bir Sistem mi Kullanıyorsunuz? Tiny Tiny RSS Reader ücretsiz ve açık kaynak kodlu, kendi kendine barındırılan, web tabanlı bir haber akışı (RSS / Atom) okuyucu ve toplayıcıdır.

Microweber Fedora 28 Kurulumu

Microweber Fedora 28 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Microweber açık kaynak kodlu bir sürükle bırak CMS ve online mağaza. Microweber kaynak kodu GitHubda barındırılmaktadır. Bu kılavuz size

ImpressPages CMS 5.0ı Fedora 26 LAMP VPSye Yükleme

ImpressPages CMS 5.0ı Fedora 26 LAMP VPSye Yükleme

Farklı Bir Sistem mi Kullanıyorsunuz? ImpressPages CMS 5.0 basit ve etkili, ücretsiz ve açık kaynaklı, kullanıcı dostu, MVC tabanlı, İçerik Yönetim Sistemidir (CMS)

Fedora 28 Üzerine Kaşe Yükleme

Fedora 28 Üzerine Kaşe Yükleme

Farklı Bir Sistem mi Kullanıyorsunuz? Cachet PHP ile yazılmış açık kaynaklı bir durum sayfası sistemidir. Cachetin kaynak kodu bu Github deposunda barındırılmaktadır. Thi içinde

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun