Инсталирайте Plesk на CentOS 7
Използване на различна система? Plesk е собствен контролен панел за уеб хост, който позволява на потребителите да администрират своите лични и/или клиентски уебсайтове, бази данни
Wiki.js е безплатно и модерно уики приложение с отворен код, изградено на Node.js, MongoDB, Git и Markdown. Изходният код на Wiki.js се хоства публично на Github . Това ръководство ще ви покаже как да инсталирате Wiki.js на нов екземпляр на CentOS 7 Vultr, използвайки Node.js, MongoDB, PM2, Nginx, Git и Acme.sh.
Изискванията за стартиране на Wiki.js са следните:
A
/ AAAA
настроени записиПроверете версията на CentOS.
cat /etc/centos-release
# CentOS Linux release 7.5.1804 (Core)
Създайте нов non-root
потребителски акаунт с sudo
достъп и превключете към него.
useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe
ЗАБЕЛЕЖКА : Заменете johndoe
с вашето потребителско име .
Настройте часовата зона.
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Уверете се, че вашата система е актуална.
sudo yum update -y
Инсталирайте необходимите пакети, за да завършите този урок.
sudo yum install -y wget curl vim zip unzip bash-completion
Деактивирайте SELinux и защитната стена.
sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld
Активирайте EPEL хранилището.
sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Хранищата на CentOS предоставят много остаряла версия на Git, така че ще трябва да изградим Git от източник.
Инсталирайте Git, като го изградите от изходния код.
# Remove existing git package if installed:
sudo yum remove -y git
sudo yum groupinstall -y "Development Tools"
sudo yum install -y gettext-devel openssl-devel perl-CPAN perl-devel zlib-devel curl-devel
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.17.1.tar.gz && tar zxvf git-2.17.1.tar.gz
rm git-2.17.1.tar.gz
cd git-2.17.1
make configure
./configure
make prefix=/usr/local all
sudo make prefix=/usr/local install
cd ~
# Confirm this command returns /usr/local/bin/git:
which git
Проверете версията.
git --version
# git version 2.17.1
Wiki.js изисква Node.js 6.9.0 или по-нова версия, така че първо ще трябва да инсталираме Node.js.
Инсталирайте Node.js, като използвате хранилището на NodeSource YUM за Node.js.
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
sudo yum install -y nodejs
Проверете версиите на Node.js и NPM.
node -v && npm -v
# v8.11.2
# 5.6.0
Wiki.js използва MongoDB като машина за база данни. Ще използваме официалните хранилища на MongoDB , които съдържат най-новите основни и второстепенни версии на MongoDB.
Инсталирайте MongoDB Community Edition.
sudo vim /etc/yum.repos.d/mongodb-org-3.6.repo
# Copy/paste this
[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
sudo yum install -y mongodb-org
Проверете версията.
mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v3.6.5
# db version v3.6.5
Активирайте и стартирайте MongoDB.
sudo systemctl enable mongod.service
sudo systemctl start mongod.service
Силно препоръчително е да поставите стандартен уеб сървър пред Wiki.js. Това гарантира, че можете да използвате функции като SSL, множество уебсайтове, кеширане и други.
Инсталирайте Nginx.
sudo vim /etc/yum.repos.d/nginx_mainline.repo
# Copy/paste this
[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=1
enabled=1
wget https://nginx.org/keys/nginx_signing.key
sudo rpm --import nginx_signing.key
rm nginx_signing.key
sudo yum install -y nginx
Проверете версията.
nginx -v
# nginx version: nginx/1.15.0
Активирайте и стартирайте Nginx.
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
Конфигурирайте Nginx като HTTP
или HTTPS
обратен прокси за Wiki.js.
Стартирайте sudo vim /etc/nginx/conf.d/wiki.js.conf
и го попълнете с основната конфигурация за обратен прокси по-долу.
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;
}
}
Единственото нещо, което трябва да промените в горната конфигурация, е server_name
директива и евентуално proxy_pass
директива, ако решите да конфигурирате всеки друг порт освен 3000
. Wiki.js използва порт 3000
по подразбиране.
Проверете конфигурацията.
sudo nginx -t
Презаредете Nginx.
sudo systemctl reload nginx.service
Securing your wiki with HTTPS
is not necessary, but it is a good practice to secure your site traffic. In order to obtain an SSL certificate from Let's Encrypt, we will use Acme.sh client. Acme.sh is a pure UNIX shell script for obtaining SSL certificates from Let's Encrypt with zero dependencies. That makes it very lightweight in comparison to some other Acme protocol clients that require a lot of dependencies to run successfully.
Download and install Acme.sh.
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 ~
Check the version.
/etc/letsencrypt/acme.sh --version
# v2.7.9
Obtain RSA and ECDSA certificates for your domain/hostname.
# 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
After running the above commands, your certificates and keys will be in the following directories:
/etc/letsencrypt/wiki.example.com
/etc/letsencrypt/wiki.example.com_ecc
NOTE: Don't forget to replace wiki.example.com
with your domain name.
След като получим сертификати от Let's Encrypt, трябва да конфигурираме Nginx, за да се възползваме от тях.
Стартирайте sudo vim /etc/nginx/conf.d/wiki.js.conf
отново и конфигурирайте Nginx като HTTPS
обратен прокси.
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;
}
}
Проверете конфигурацията.
sudo nginx -t
Презаредете Nginx.
sudo systemctl reload nginx.service
Създайте празна основна папка на документа, където трябва да бъде инсталиран Wiki.js.
sudo mkdir -p /var/www/wiki.example.com
Придвижете се до главната папка на документа.
cd /var/www/wiki.example.com
Променете собствеността върху /var/www/wiki.example.com
папката на потребител johndoe
.
sudo chown -R johndoe:johndoe /var/www/wiki.example.com
От /var/www/wiki.example.com
папката изпълнете следната команда, за да изтеглите и инсталирате Wiki.js.
curl -sSo- https://wiki.js.org/install.sh | bash
Можете да изпълните следната команда, за да видите текущо инсталираната версия на Wiki.js.
node wiki --version
# 1.0.78
След като инсталацията приключи, ще бъдете подканени да стартирате съветника за конфигурация.
Стартирайте съветника за конфигурация.
node wiki configure
Това ще ви уведоми да отидете до, за http://localhost:3000
да конфигурирате Wiki.js. Ако имате Nginx пред Wiki.js, можете да отворите името на вашия домейн (напр. http://wiki.example.com
), вместо да отидете на localhost
.
С помощта на вашия уеб браузър отидете http://wiki.example.com
и следвайте инструкциите на екрана. Всички настройки, въведени по време на съветника за конфигуриране, са запазени във config.yml
файла. Съветникът за конфигурация автоматично ще стартира Wiki.js вместо вас.
По подразбиране Wiki.js няма да се стартира автоматично след рестартиране на системата. За да го накараме да стартира при стартиране, трябва да настроим мениджъра на процеси PM2.
Кажете на PM2 да се конфигурира като стартираща услуга.
/var/www/wiki.example.com/node_modules/pm2/bin/pm2 startup
Накрая запазете текущата конфигурация на PM2, като изпълните командата.
/var/www/wiki.example.com/node_modules/pm2/bin/pm2 save
Вашият екземпляр на Wiki.js работи като фонов процес, използвайки PM2 като мениджър на процеси. Можете да рестартирате вашата ОС с sudo reboot
и да се уверите, че Wiki.js стартира след рестартиране.
Използване на различна система? Plesk е собствен контролен панел за уеб хост, който позволява на потребителите да администрират своите лични и/или клиентски уебсайтове, бази данни
Squid е популярна, безплатна програма за Linux, която ви позволява да създадете уеб прокси за препращане. В това ръководство ще видите как да инсталирате Squid на CentOS, за да ви обърне
Въведение Lighttpd е форк на Apache, чиято цел е да бъде много по-малко ресурсоемка. Той е лек, откъдето идва и името му, и е доста лесен за използване. Инсталирайте
VULTR наскоро направи промени от своя страна и вече всичко трябва да работи добре от кутията с активиран NetworkManager. Ако желаете да деактивирате
Icinga2 е мощна система за наблюдение и когато се използва в модел главен-клиент, тя може да замени необходимостта от проверки на базата на NRPE. Главният клиент
Използване на различна система? Apache Cassandra е безплатна система за управление на база данни NoSQL с отворен код, която е проектирана да осигури мащабируемост, висока
Използване на различна система? Microweber е CMS и онлайн магазин с отворен код за плъзгане и пускане. Изходният код на Microweber се хоства на GitHub. Това ръководство ще ви покаже
Използване на различна система? Mattermost е самостоятелно хоствана алтернатива с отворен код на Slack SAAS услугата за съобщения. С други думи, с Mattermost, вие ca
Какво ви трябва Vultr VPS с поне 1 GB RAM. SSH достъп (с root/административни привилегии). Стъпка 1: Инсталиране на BungeeCord На първо място
Контролният панел на Plesk разполага с много приятна интеграция за Lets Encrypt. Lets Encrypt е един от единствените доставчици на SSL, които предоставят пълно сертификати
Lets Encrypt е сертифициращ орган, посветен на предоставянето на SSL сертификати безплатно. cPanel изгради чиста интеграция, така че вие и вашият клиент
Използване на различна система? Concrete5 е CMS с отворен код, който предлага много отличителни и полезни функции за подпомагане на редакторите при лесното създаване на съдържание и
Използване на различна система? Review Board е безплатен инструмент с отворен код за преглед на изходен код, документация, изображения и много други. Това е уеб базиран софтуер
В това ръководство ще научите как да настроите HTTP удостоверяване за уеб сървър на Nginx, работещ на CentOS 7. Изисквания За да започнете, ще ви трябва
YOURLS (Your Own URL Shortener) е приложение за съкращаване на URL адреси и анализ на данни с отворен код. В тази статия ще разгледаме процеса на инсталиране
Използване на различна система? Въведение ArangoDB е NoSQL база данни с отворен код с гъвкав модел на данни за документи, графики и ключ-стойности. то е
Въведение Директорията /etc/ играе критична роля в начина, по който функционира една Linux система. Причината за това е, че почти всяка системна конфигурация
Много системни администратори управляват големи количества сървъри. Когато файловете трябва да бъдат достъпни на различни сървъри, влизането във всеки от тях поотделно ок
Този урок ще обхване процеса на инсталиране на сървър за игри Half Life 2 на CentOS 6 System. Стъпка 1: Инсталиране на предпоставките За да настроите ou
Laravel GitScrum или GitScrum е инструмент за производителност с отворен код, предназначен да помогне на екипите за разработка да внедрят методологията на Scrum по подобен начин.
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.
Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.
Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.
Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…
Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.
Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.
Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.
В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.
Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече