การติดตั้ง Pagekit CMS บน CentOS 7
ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า
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
ย้อนกลับ proxy สำหรับ 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
การรักษาความปลอดภัย wiki ของคุณHTTPS
ไม่จำเป็น แต่เป็นการปฏิบัติที่ดีในการรักษาความปลอดภัยของการรับส่งข้อมูลของเว็บไซต์ ในการรับใบรับรอง SSL จาก Let's Encrypt เราจะใช้ไคลเอ็นต์ Acme.sh Acme.sh เป็นเชลล์สคริปต์ UNIX ล้วนสำหรับรับใบรับรอง SSL จาก Let's Encrypt โดยไม่มีการพึ่งพาศูนย์ ซึ่งทำให้มีน้ำหนักเบามากเมื่อเปรียบเทียบกับไคลเอนต์โปรโตคอล Acme อื่น ๆ ที่ต้องการการพึ่งพาจำนวนมากเพื่อให้ทำงานได้สำเร็จ
ดาวน์โหลดและติดตั้ง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 ~
ตรวจสอบเวอร์ชั่น
/etc/letsencrypt/acme.sh --version
# v2.7.9
รับใบรับรอง RSA และ ECDSA สำหรับโดเมน / ชื่อโฮสต์ของคุณ
# 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
หลังจากเรียกใช้คำสั่งข้างต้นใบรับรองและคีย์ของคุณจะอยู่ในไดเรกทอรีต่อไปนี้:
/etc/letsencrypt/wiki.example.com
/etc/letsencrypt/wiki.example.com_ecc
หมายเหตุ : อย่าลืมแทนที่wiki.example.com
ด้วยชื่อโดเมนของคุณ
หลังจากได้รับใบรับรองจาก 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.jpg รุ่นที่ติดตั้งอยู่ในปัจจุบัน
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 เริ่มต้นหลังจากรีบูต
ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า
TestLink เป็นระบบดำเนินการจัดการทดสอบบนเว็บโอเพ่นซอร์ส ช่วยให้ทีมงานประกันคุณภาพสามารถสร้างและจัดการกรณีทดสอบได้เช่นกัน
FTP ที่ปลอดภัยมากหรือเพียงแค่ vsFTPd เป็นซอฟต์แวร์น้ำหนักเบาที่มีความสามารถในการปรับแต่ง ในบทช่วยสอนนี้เราจะรักษาความปลอดภัยของข้อความ
CentOS ติดตามการพัฒนา Red Hat Enterprise Linux (RHEL) RHEL พยายามที่จะเป็นแพลตฟอร์มเซิร์ฟเวอร์ที่มั่นคงซึ่งหมายความว่าจะไม่รีบเร่งในการรวม
ในบางโอกาสผู้ดูแลระบบอาจต้องสร้างบัญชีผู้ใช้และ จำกัด การเข้าถึงเพื่อจัดการไฟล์ของตัวเองผ่าน sFTP เท่านั้น
ใช้ระบบที่แตกต่างกันอย่างไร Moodle เป็นแพลตฟอร์มการเรียนรู้โอเพนซอร์ซหรือระบบจัดการหลักสูตร (CMS) - ชุดซอฟต์แวร์โอเพ่นซอร์สฟรีที่ออกแบบมาเพื่อช่วย
ในบทความนี้ฉันจะอธิบายวิธีสร้าง LEMP สแต็คที่ได้รับการป้องกันโดย ModSecurity ModSecurity เป็นไฟร์วอลล์เว็บแอพพลิเคชันแบบโอเพนซอร์สที่มีประโยชน์
Introduction LAMP เป็นคำย่อที่ย่อมาจาก Linux, Apache, MySQL และ PHP ซอฟต์แวร์นี้เป็นโซลูชันโอเพ่นซอร์สที่ได้รับความนิยมสูงสุดสำหรับการติดตั้ง o
Icinga2 เป็นระบบการตรวจสอบที่มีประสิทธิภาพและเมื่อใช้ในโมเดลลูกค้าหลักจะสามารถแทนที่ความต้องการการตรวจสอบที่อิง NRPE ปรมาจารย์
ใช้ระบบที่แตกต่างกันอย่างไร Netdata เป็นดาวรุ่งพุ่งแรงในด้านการติดตามการวัดในระบบแบบเรียลไทม์ เมื่อเปรียบเทียบกับเครื่องมือชนิดเดียวกัน Netdata:
Buildbot เป็นโอเพ่นซอร์สเครื่องมือที่ใช้การรวมอย่างต่อเนื่องของ Python สำหรับการสร้างซอฟต์แวร์การทดสอบและการปรับใช้โดยอัตโนมัติ Buildbot ประกอบด้วยหนึ่งหรือหมอ
ยินดีต้อนรับสู่การกวดวิชา Vultr อื่น ที่นี่คุณจะได้เรียนรู้วิธีการติดตั้งและเรียกใช้เซิร์ฟเวอร์ SAMP คู่มือนี้เขียนขึ้นสำหรับ CentOS 6 ข้อกำหนดเบื้องต้นคุณจะต้อง
แอปพลิเคชั่น dotProject เป็นเครื่องมือการจัดการโครงการแบบโอเพ่นซอร์สบนเว็บ สำหรับตอนนี้มันวางจำหน่ายภายใต้ GPL ดังนั้นคุณสามารถปรับใช้และใช้งานได้บนบริการของคุณ
ใช้ระบบที่แตกต่างกันอย่างไร TaskWarrior เป็นเครื่องมือจัดการเวลาแบบโอเพ่นซอร์สที่เป็นการปรับปรุงแอพพลิเคชั่น Todo.txt และโคลนของมัน เนื่องมาจาก
ใช้ระบบที่แตกต่างกันอย่างไร Selfoss RSS Reader เป็นฟรีและเปิดตัวเองบนเว็บโฮสต์อเนกประสงค์, สตรีมสด, ตอบโต้กับผู้ใช้ได้, ฟีดข่าว (RSS / Atom) reade
ใช้ระบบที่แตกต่างกันอย่างไร Kanboard เป็นซอฟต์แวร์ซอฟต์แวร์การจัดการโครงการโอเพ่นซอร์สฟรีที่ออกแบบมาเพื่ออำนวยความสะดวกและมองเห็นภาพการทำงานเป็นทีม
บทช่วยสอนนี้จะกล่าวถึงกระบวนการติดตั้งเซิร์ฟเวอร์เกม Half Life 2 บนระบบ CentOS 6 ขั้นตอนที่ 1: การติดตั้งข้อกำหนดเบื้องต้นเพื่อตั้งค่า ou
GlusterFS เป็นระบบไฟล์ที่เชื่อมต่อกับเครือข่ายซึ่งช่วยให้คุณแบ่งปันไดรฟ์สองตัวในอุปกรณ์หลายตัวบนเครือข่ายได้อย่างมีประสิทธิภาพ ระบบไฟล์นี้คือ
ใช้ระบบที่แตกต่างกันอย่างไร ในขณะที่การโยกย้ายเว็บไซต์มักจะไม่มีปัญหาบางครั้งก็ยากที่จะโยกย้ายกล่องอีเมล นี่คือ CAS โดยเฉพาะอย่างยิ่ง
PrestaShop เป็นโซลูชันอีคอมเมิร์ซแบบโอเพ่นซอร์สที่ได้รับความนิยม คุณสามารถใช้มันเพื่อสร้างร้านค้าออนไลน์ของคุณเองได้ฟรี ในบทช่วยสอนนี้ฉันจะแสดงให้คุณเห็นว่า
ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน
การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane
ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+
อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ
เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม
13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data
คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true
ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร
ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1
AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน