ติดตั้งวาทกรรมบน CentOS 7

วาทกรรมเป็นวิธีการแก้ปัญหาฟอรั่มโอเพนซอร์สใหม่ที่เรียบง่ายสะอาดและตรงไปตรงมา มันถูกนำมาใช้กับ Ruby on Rails ฐานข้อมูล Postgres และแคชเซิร์ฟเวอร์ Redis บทช่วยสอนนี้อธิบายวิธีติดตั้ง Discourse บน Vultr VPS ด้วย CentOS 7

ความต้องการ

  • Vultr VPS พร้อม RAM ขั้นต่ำ 1GB
  • CentOS 7 x64 ได้รับการติดตั้งบน VPS

ตั้งค่าไฟล์สลับ

คุณต้องตั้งค่า swap สำหรับ 1GB RAM VPS หาก VPS ของคุณมี RAM มากกว่า 1GB คุณสามารถข้ามขั้นตอนนี้ได้ เราจะสร้าง swapfile 2GB สำหรับ 1GB RAM VPS

  1. สร้าง swapfile

    dd if=/dev/zero of=/swapfile bs=1M count=2048
    mkswap /swapfile
    chmod 600 /swapfile
    
  2. แก้ไข fstab เพื่อเพิ่ม swapfile ลงในตารางระบบไฟล์

    เปิด fstab ด้วย vi:

    vi /etc/fstab
    

    เพิ่มบรรทัดต่อไปนี้ลงในไฟล์:

    /swapfile       swap    swap    defaults      0       0
    
  3. กำหนดนโยบายการใช้ swap ใช้ swapfile เมื่อหน่วยความจำระบบเหลือน้อย

    sysctl -w vm.swappiness=10
    echo vm.swappiness = 10 | tee -a /etc/sysctl.conf
    sysctl vm.vfs_cache_pressure=60
    echo vm.vfs_cache_pressure = 60 | tee -a /etc/sysctl.conf
    
  4. เปิดใช้งาน swapfile

    mount -a
    swapon -a
    
  5. ตรวจสอบสถานะ swapfile

    swapon -s
    

    หากเปิดใช้งาน swapfile คุณจะเห็นข้อมูลต่อไปนี้

    Filename                    Type    Size    Used    Priority
    /swapfile                  file     2097148 0       -1
    

ติดตั้ง Docker

เรียกใช้คำสั่งด้านล่างเพื่อติดตั้ง Docker บน CentOS 7

yum install docker

หากคุณปิดใช้งาน SELinux คุณควรปิดการใช้งานใน docker ด้วย

vi /etc/sysconfig/docker

แสดงความคิดเห็นในบรรทัดที่ 4

#OPTIONS='--selinux-enabled'

เริ่มบริการนักเทียบท่า

systemctl start docker
systemctl enable docker

โปรดทราบว่าหากคุณรีสตาร์ท firewalld คุณจะต้องรีสตาร์ท docker ด้วย เนื่องจาก firewalld จะลบสายเชื่อมต่อนักเทียบท่าออกจาก iptables เมื่อทำการรีสตาร์ท

ติดตั้งวาทกรรม

สร้างโฟลเดอร์discourseภายใต้ชื่อ/varและโคลนที่เก็บ Discourse

mkdir /var/discourse
git clone https://github.com/discourse/discourse_docker.git /var/discourse

ไปที่discourseโฟลเดอร์

cd /var/discourse

คัดลอกไฟล์เทมเพลตการกำหนดค่า Discourse ลงในโฟลเดอร์คอนเทนเนอร์

cp samples/standalone.yml containers/app.yml

กำหนดค่าวาทกรรม

  1. เปิดapp.ymlด้วยด้วย vi

     vi containers/app.yml
    
  2. หากคุณกำลังใช้ 1GB VPS ตั้งฐานข้อมูลร่วมกันเป็นบัฟเฟอร์ 128MB app.ymlใน

    db_shared_buffers: "128MB"
    
  3. เปลี่ยนUNICORN_WORKERSเป็น 2 สำหรับอินสแตนซ์ RAM 1GB

    ## With 2GB we recommend 3-4 workers, with 1GB only 2
    UNICORN_WORKERS: 2
    
  4. ตั้งค่าที่อยู่อีเมลของคุณสำหรับบัญชีผู้ดูแลระบบ คุณจะต้องใช้อีเมลนี้เพื่อลงทะเบียนบัญชีผู้ดูแลระบบในฟอรัมสนทนาของคุณ

    DISCOURSE_DEVELOPER_EMAILS: 'you@youremail.com'
    
  5. ตั้งชื่อโดเมนสำหรับวาทกรรม ตัวอย่างเช่นเราตั้งค่าเป็นdiscourse.example.comซึ่งหมายความว่า URL http://discourse.example.com/นั้นสามารถเข้าถึงได้

    ## TODO: The domain name this Discourse instance will respond to
    DISCOURSE_HOSTNAME: 'discourse.example.com'
    
  6. กำหนดค่าเซิร์ฟเวอร์อีเมลของคุณสำหรับการสนทนา

    หากเมลเซิร์ฟเวอร์ของคุณอยู่บนเซิร์ฟเวอร์เดียวกันกับ Discourse ให้กำหนดค่าดังต่อไปนี้

    DISCOURSE_SMTP_ADDRESS: smtp.example.com                               # (mandatory)
    DISCOURSE_SMTP_PORT: 587                                                              # (optional)
    DISCOURSE_SMTP_USER_NAME: YOUR_EMAIL_ACCOUNT                # (optional)
    DISCOURSE_SMTP_PASSWORD: YOURPASSWORD                             # (optional)
    DISCOURSE_SMTP_ENABLE_START_TLS: flase                                    # (optional, default true)
    DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none
    

    หากคุณใช้เซิร์ฟเวอร์ SMTP ระยะไกลโปรดแก้ไขapp.ymlดังต่อไปนี้

    DISCOURSE_SMTP_ADDRESS: smtp.example.com                               # (mandatory)
    DISCOURSE_SMTP_PORT: 587                                                              # (optional)
    DISCOURSE_SMTP_USER_NAME: your@example.com                          # (optional)
    DISCOURSE_SMTP_PASSWORD: YOURPASSWORD                             # (optional)
    DISCOURSE_SMTP_ENABLE_START_TLS: true                                     # (optional, default true)
    
  7. app.ymlบันทึกและออก

บูตและเริ่มต้นวาทกรรม

เรียกใช้คำสั่งด้านล่างเพื่อ bootstrap Discourse

./launcher bootstrap app

หลังจากกระบวนการบูตสแตรปเสร็จสมบูรณ์ให้เริ่มการสนทนา

./launcher start app

เปิดวาทกรรมในเบราว์เซอร์ของคุณ

app.ymlในเครื่องคอมพิวเตอร์ของลูกค้าของคุณใส่ชื่อโดเมนที่คุณกำหนดค่าสำหรับวาทกรรมใน คุณจะเห็นตัวอย่างของวาทกรรมของคุณเอง

การแก้ไขปัญหา

  • โดยค่าเริ่มต้น Docker จะฟังพอร์ต 80 ถ้าพอร์ต 80 ถูกใช้โดย Nginx หรือ Apache แล้วคุณต้องย้ายบริการนั้นไปยังพอร์ตอื่น หรือเปลี่ยน Docker เป็นพอร์ตอื่น ตัวอย่างเช่นเปลี่ยน "80:80" เป็น "8080: 80" ในapp.ymlเพื่อให้ Docker ฟังพอร์ต 8080
  • บน 1GB RAM VPS อาจไม่สามารถอัปเดต Discourse ให้เป็นเวอร์ชั่นใหม่และคุณจะเห็น "502 Bad Gateway" เมื่อเข้าถึง Discourse ทางออกที่ง่ายสำหรับปัญหานี้คือการเรียกใช้./launcher rebuild appเพื่อสร้างอินสแตนซ์การสนทนาของคุณใหม่

ฝากความเห็น

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true