วิธีการติดตั้ง Wekan (Open Source Kanban) บน Ubuntu 16.04

Wekan เป็นบอร์ด kanban ที่สร้างด้วยกรอบ Meteor JavaScript มันถือเป็นโอเพนซอร์ซและเป็นเจ้าภาพทางเลือกแทน Trello โดยให้คุณสมบัติเกือบเหมือนกัน ช่วยให้คุณสร้างรายการการจัดการแบบ "ต้องทำ" แบบใช้บัตร Wekan มีประโยชน์อย่างมากในการเพิ่มผลผลิตเมื่อทำงานในสภาพแวดล้อมการทำงานร่วมกัน Wekan มีเว็บอินเตอร์เฟสที่ตอบสนองอย่างสมบูรณ์และมีการแปลอย่างแข็งขันในหลายภาษา

ข้อกำหนดเบื้องต้น

  • อินสแตนซ์ของเซิร์ฟเวอร์ Vultr Ubuntu 16.04
  • sudo ผู้ใช้

สำหรับบทช่วยสอนนี้เราจะใช้wekan.example.comเป็นชื่อโดเมนที่ชี้ไปยังอินสแตนซ์ Vultr โปรดตรวจสอบให้แน่ใจว่าได้แทนที่ชื่อโดเมนตัวอย่างทั้งหมดด้วยชื่อจริง

ปรับปรุงระบบฐานของคุณใช้คู่มือวิธีการปรับปรุง Ubuntu 16.04 เมื่อระบบของคุณอัปเดตแล้วให้ดำเนินการติดตั้งการอ้างอิงต่อ

ติดตั้ง Node.js

Node.js LTS version 4.8สนับสนุนเฉพาะ Wekan ในการติดตั้ง Node.js เราจะใช้ตัวจัดการเวอร์ชันของโหนด ติดตั้งnvmโดยเรียกใช้สคริปต์ตัวติดตั้ง

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash

หากต้องการเริ่มใช้งานnvmให้เรียกใช้ทันที

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

หากnvmติดตั้งสำเร็จแล้วคุณควรจะตรวจสอบเวอร์ชั่นของมัน

user@vultr:~$ nvm --version
0.33.4

ติดตั้ง Node.js.

nvm install v4.8

ตั้งค่ารุ่นเริ่มต้นของ Node.js

nvm use node

หาก Node.js ติดตั้งสำเร็จคุณควรตรวจสอบเวอร์ชั่นของมัน

node -v

คุณจะเห็นผลลัพธ์นี้

user@vultr:~$ node -v
v4.8.4

NVM ติดตั้ง Node.js สำหรับผู้ใช้ปัจจุบันเท่านั้น เพื่อให้ Node.js สามารถเข้าถึงได้ทั่วโลกให้รันสิ่งนี้

n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr

Node.js /usr/bin/nodeอยู่ในขณะนี้

user@vultr:~$ sudo which node
/usr/bin/node

ติดตั้ง MongoDB

MongoDB เป็นเซิร์ฟเวอร์ฐานข้อมูล NoSQL ฟรีและโอเพ่นซอร์ส ซึ่งแตกต่างจากฐานข้อมูลดั้งเดิมที่ใช้ตารางเพื่อจัดระเบียบข้อมูลของพวกเขา MongoDB เป็นเอกสารเชิงและใช้เอกสารเหมือน JSON โดยไม่ต้อง schema Wekan ใช้ MongoDB เพื่อจัดเก็บข้อมูล

Wekan MongoDB version 3.2ใช้ได้กับเฉพาะ สร้างไฟล์ที่เก็บใหม่

echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

อิมพอร์ตคีย์ GPG พับลิก MongoDB และอัพเดตรายการแพ็กเกจ

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
sudo apt update

ติดตั้ง MongoDB

sudo apt install -y mongodb-org

เริ่ม MongoDB และเปิดใช้งานให้เริ่มโดยอัตโนมัติ

sudo systemctl start mongod
sudo systemctl enable mongod

การรักษาความปลอดภัยเช่น MongoDB

ตามค่าเริ่มต้นจะไม่มีการเปิดใช้งานการรับรองความถูกต้องในเซิร์ฟเวอร์ MongoDB ผู้ใช้ที่มีสิทธิ์เข้าถึงเทอร์มินัลของเซิร์ฟเวอร์จะมีสิทธิ์แบบเต็มในการติดตั้ง MongoDB เพื่อความปลอดภัยของเซิร์ฟเวอร์ฐานข้อมูลและ จำกัด การเข้าถึงของผู้ใช้ที่ไม่มีสิทธิ์เราจะต้องตั้งค่าการตรวจสอบความถูกต้องบนเซิร์ฟเวอร์

MongoDB จัดเตรียมmongoเชลล์ซึ่งใช้เพื่อรันเคียวรีบน MongoDB สลับไปที่mongoเปลือก

mongo

สร้างผู้ใช้ MongoDB ใหม่ด้วยสิทธิ์ของรูท คุณสามารถใช้ชื่อผู้ใช้ที่คุณเลือก โปรดตรวจสอบให้แน่ใจว่าได้เปลี่ยนรหัสผ่านแล้ว

db.createUser(
  {
    user: "admin",
    pwd: "StrongAdminPassword",
    roles: [ { role: "root", db: "admin" } ]
  }
)

คุณควรเห็นผลลัพธ์ต่อไปนี้

user@vultr:~$ mongo
MongoDB shell version: 3.2.17
connecting to: test
Welcome to the MongoDB shell.

...

2017-09-30T18:11:40.274+0000 I CONTROL  [initandlisten]
> db.createUser(
...   {
...     user: "admin",
...     pwd: "StrongAdminPassword",
...     roles: [ { role: "root", db: "admin" } ]
...   }
... )
Successfully added user: {
        "user" : "admin",
        "roles" : [
                {
                        "role" : "root",
                        "db" : "admin"
                }
        ]
}

ออกจากอินเตอร์เฟสคำสั่ง MongoDB ไปยังเทอร์มินัล Linux โดยกด " Ctrl+C"

แก้ไขไฟล์กำหนดค่า MongoDB

sudo nano /etc/mongod.conf

ผนวกบรรทัดต่อไปนี้ที่ท้ายไฟล์

security:
 authorization: enabled

รีสตาร์ท MongoDB เพื่อให้การเปลี่ยนแปลงการกำหนดค่ามีผล

sudo systemctl restart mongod

ตอนนี้ความปลอดภัยได้รับการเปิดใช้งานแล้วคุณสามารถทดสอบว่ามันทำงานได้หรือไม่โดยการเปลี่ยนไปที่ mongo shell อีกครั้งโดยใช้mongoคำสั่ง เวลานี้หากคุณเรียกใช้คิวรีเช่นshow dbsเพื่อแสดงรายการฐานข้อมูลคุณจะเห็นการรายงานข้อความล้มเหลวในการให้สิทธิ์ ออกจากsudoผู้ใช้อีกครั้งหลังจากทดสอบการเข้าสู่ระบบในฐานะผู้ใช้ใหม่ที่คุณเพิ่งสร้าง

เข้าสู่ระบบในฐานะadministratorผู้ใช้ที่คุณเพิ่งสร้างขึ้น

mongo -u admin -p

ระบุรหัสผ่านของผู้ใช้สำหรับการเข้าสู่ระบบที่ประสบความสำเร็จ สร้างผู้ใช้ใหม่สำหรับwekanฐานข้อมูลที่จะใช้ในการจัดเก็บข้อมูล Wekan

use wekan
db.createUser(
    {
      user: "wekan",
      pwd: "StrongPassword",
      roles: ["readWrite"]
    }
 ) 

ตรวจสอบให้แน่ใจว่าได้แทนที่StrongPasswordด้วยรหัสผ่านที่คาดเดายาก คุณจะเห็นผลลัพธ์ต่อไปนี้

user@vultr:~$ mongo -u admin -p
MongoDB shell version: 3.2.17
Enter password:
connecting to: test

...

2017-09-30T18:13:26.007+0000 I CONTROL  [initandlisten]
>
> use wekan
switched to db wekan
> db.createUser(
...     {
...       user: "wekan",
...       pwd: "StrongPassword",
...       roles: ["readWrite"]
...     }
...  )
Successfully added user: { "user" : "wekan", "roles" : [ "readWrite" ] }

ติดตั้ง Wekan

ตรวจสอบลิงก์ล่าสุดไปยังWekan รีลีสบน Githubเนื่องจากมีการออกรุ่นใหม่บ่อยมาก ดาวน์โหลด Wekan เวอร์ชั่นล่าสุดจาก Github แทนที่ลิงก์ไปยังแพ็คเกจการติดตั้ง

cd ~
wget https://github.com/wekan/wekan/releases/download/v0.44/wekan-0.44.tar.gz

wekanแยกเก็บดาวน์โหลดลงในไดเรกทอรีใหม่ชื่อ

mkdir wekan
tar xzvf wekan-*.tar.gz -C wekan

ติดตั้งการขึ้นต่อกันของ Node.js

cd wekan/bundle/programs/server && npm install

เซิร์ฟเวอร์ Wekan อ่านการกำหนดค่าจากตัวแปรสภาพแวดล้อม รันคำสั่งต่อไปนี้เพื่อตั้งค่าการกำหนดค่าเป็นตัวแปรสภาพแวดล้อม

export MONGO_URL='mongodb://wekan:[email protected]:27017/wekan?authSource=wekan'
export ROOT_URL='http://wekan.example.com'
export MAIL_URL='smtp://user:[email protected]:25/'
export MAIL_FROM='[email protected]'
export PORT=4000

ตรวจสอบให้แน่ใจว่าได้เปลี่ยนรหัสผ่าน MongoDB สำหรับwekanผู้ใช้ที่คุณสร้างไว้ นอกจากนี้ให้อัปเดต URL อีเมลตามการตั้งค่าเซิร์ฟเวอร์ SMTP ของคุณ หากคุณยังไม่พร้อมเซิร์ฟเวอร์อีเมลคุณสามารถเปลี่ยนการกำหนดค่านี้ได้ในภายหลัง

หากต้องการเริ่มต้นแอปพลิเคชันทันที

cd ~/wekan/bundle
node main.js

http://wekan.example.com:4000ขณะนี้คุณสามารถเข้าถึงโปรแกรมได้โดยไปที่ คุณจะเห็นอินเทอร์เฟซสำหรับการล็อกอินเข้าสู่บอร์ด Wekan kanban

สำหรับการใช้งานจริงขอแนะนำให้ตั้งค่าพร็อกซีย้อนกลับเพื่อให้บริการแอปพลิเคชันบนHTTPพอร์ตมาตรฐานและsystemdบริการเพื่อจัดการกระบวนการแอปพลิเคชัน ในบทช่วยสอนนี้เราจะใช้เว็บเซิร์ฟเวอร์ Nginx เป็น reverse proxy ปลอดภัยด้วย Let's Encrypt SSL ฟรี

การตั้งค่า Nginx Reverse Proxy

เพิ่มที่Certbot PPAเก็บลงในระบบ

sudo add-apt-repository ppa:certbot/certbot
sudo apt update

ติดตั้ง Nginx และ Certbot ซึ่งเป็นแอปพลิเคชันไคลเอนต์สำหรับ Let's Encrypt CA

sudo apt -y install certbot nginx

หมายเหตุ: ชื่อโดเมนที่คุณใช้เพื่อรับใบรับรองจาก Let's Encrypt CA นั้นจะต้องชี้ไปที่เซิร์ฟเวอร์ ลูกค้าสามารถตรวจสอบผู้มีอำนาจโดเมนก่อนที่จะออกใบรับรอง

สร้างใบรับรอง SSL

sudo certbot certonly --standalone -d wekan.example.com

ใบรับรองที่สร้างขึ้นมีแนวโน้มที่จะถูกเก็บไว้ใน/etc/letsencrypt/live/wekan.example.com/ไดเรกทอรี ใบรับรอง SSL จะถูกเก็บไว้เป็นและคีย์ส่วนตัวจะถูกเก็บไว้เป็นfullchain.pemprivkey.pem

Let's เข้ารหัสเข้ารหัสหมดอายุใน 90 วันดังนั้นขอแนะนำให้ตั้งค่าการต่ออายุใบรับรองโดยอัตโนมัติโดยใช้ Cronjob Cron เป็นบริการระบบที่ใช้ในการทำงานเป็นระยะ

เปิดไฟล์งาน cron

sudo crontab -e

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

30 5 * * * /usr/bin/certbot renew --quiet

งาน cron ข้างต้นจะทำงานทุกวันเวลา 5.30 น. หากใบรับรองถึงกำหนดหมดอายุก็จะต่ออายุโดยอัตโนมัติ

สร้างโฮสต์เสมือนใหม่

sudo nano /etc/nginx/sites-available/wekan.example.com.conf

เติมไฟล์ด้วยข้อมูลต่อไปนี้

upstream wekan {
        server 127.0.0.1:4000;
}
server {
        listen  80;
        listen [::]:80;
        server_name  wekan.example.com;

        location / {
                if ($ssl_protocol = "") {
                        rewrite     ^   https://$server_name$request_uri? permanent;
                }
        }
}

server {
        listen 443 ssl;
        listen [::]:443 ssl;
        server_name wekan.example.com;

        add_header Strict-Transport-Security "max-age=15768000";

        ssl_certificate /etc/letsencrypt/live/wekan.example.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/wekan.example.com/privkey.pem;

        ssl_session_timeout 1d;
        ssl_session_cache shared:SSL:10m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
        ssl_prefer_server_ciphers on;

        ssl_stapling on;
        ssl_stapling_verify on;

        error_page 497  https://$host:$server_port$request_uri;
        location / {
            proxy_pass http://wekan;
            proxy_http_version 1.1;
            proxy_set_header Host $host:$server_port;
            proxy_set_header Referer $http_referer;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto https;
            proxy_set_header X-Forwarded-Ssl on;
            proxy_set_header X-Nginx-Proxy true;

            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";

            proxy_redirect off;

            proxy_send_timeout 86400;
            proxy_read_timeout 86400;
        }
}

แทนที่wekan.example.comด้วยชื่อโดเมนจริงของคุณในการกำหนดค่าข้างต้น

เปิดใช้งานไซต์ที่เพิ่งเพิ่มเข้าไป

sudo ln -s /etc/nginx/sites-available/wekan.example.com.conf /etc/nginx/sites-enabled/wekan.example.com.conf

รีสตาร์ท Nginx เพื่อให้การเปลี่ยนแปลงมีผล

sudo systemctl restart nginx

เปิดใช้งาน Nginx เพื่อเริ่มต้นโดยอัตโนมัติในเวลาบูต

sudo systemctl enable nginx

บริการติดตั้ง Systemd

สร้างผู้ใช้ใหม่เพื่อให้กระบวนการทำงาน

sudo adduser wekan --shell /usr/sbin/nologin --home /opt/wekan

ตอนนี้ย้ายไฟล์ทั้งหมดไปยัง/opt/wekanไดเรกทอรี

sudo mv ~/wekan/* /opt/wekan/

มอบความเป็นเจ้าของไฟล์ให้กับผู้ใช้ที่เพิ่งสร้างใหม่

sudo chown -R wekan:wekan /opt/wekan

Wekan ไม่ได้ใช้ข้อมูลจากไฟล์กำหนดค่าใด ๆ แต่จะเข้าถึงได้จากตัวแปรสภาพแวดล้อม เราจะสร้างไฟล์ใหม่เพื่อเก็บตัวแปรสภาพแวดล้อม ไฟล์ที่มีตัวแปรสภาพแวดล้อมจะถูกส่งผ่านSystemdบริการ

สร้างไฟล์ใหม่เพื่อเก็บตัวแปรสภาพแวดล้อม

 sudo nano /opt/wekan/config.env

เติมไฟล์ด้วยเนื้อหาต่อไปนี้

MONGO_URL='mongodb://wekan:[email protected]:27017/wekan?authSource=wekan'
ROOT_URL='http://wekan.example.com'
MAIL_URL='smtp://user:[email protected]:25/'
MAIL_FROM='[email protected]'
PORT=4000
HTTP_FORWARDED_COUNT=1

กรุณาตรวจสอบให้แน่ใจว่าจะเข้ามาแทนที่และusernamepassword

ให้สิทธิ์การเป็นเจ้าของแก่wekanผู้ใช้โดยการเรียกใช้

sudo chown -R wekan:wekan /opt/wekan/config.env

สร้างไฟล์บริการใหม่สำหรับบริการ Wekan systemd

sudo nano /etc/systemd/system/wekan.service

เติมไฟล์ด้วยข้อมูลต่อไปนี้

[Unit]
Description=Wekan Server
After=syslog.target
After=network.target

[Service]
Type=simple
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5
RestartSec=10
ExecStart=/usr/bin/node /opt/wekan/bundle/main.js
EnvironmentFile=/opt/wekan/config.env
ExecReload=/bin/kill -USR1 $MAINPID
RestartSec=10
User=wekan
Group=wekan
WorkingDirectory=/opt/wekan
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=Wekan

[Install]
WantedBy=multi-user.target

บันทึกไฟล์และออกจากตัวแก้ไข ตอนนี้คุณสามารถเริ่ม Wekan ได้อย่างง่ายดาย

sudo systemctl start wekan

หากต้องการเปิดใช้งาน Wekan ให้เริ่มต้นโดยอัตโนมัติในเวลาบูต

sudo systemctl enable wekan

เพื่อตรวจสอบสถานะของบริการ Wekan

sudo systemctl status wekan

ห่อ

ตอนนี้คุณสามารถเข้าถึงอินสแตนซ์ Wekan https://wekan.example.comได้แล้ว เริ่มต้นด้วยการสร้างบัญชีใหม่ เมื่อคุณสร้างบัญชีแล้วคุณสามารถเปิดใช้งานการเข้าถึงระดับผู้ดูแลระบบสำหรับผู้ใช้ที่เพิ่งสร้างใหม่ ล็อกอินเข้าสู่เชลล์ MongoDB ในฐานะผู้ใช้ที่เป็นผู้ดูแลระบบ

mongo -u wekan -p --authenticationDatabase "wekan"

ตอนนี้เลือกwekanฐานข้อมูลและอัปเดตวัตถุเพื่อโปรโมตผู้ใช้ไปยังผู้ใช้ที่เป็นผู้ดูแลระบบ

use wekan
db.users.update({username:'admin_user'},{$set:{isAdmin:true}})

โปรดตรวจสอบให้แน่ใจว่าได้แทนที่admin_userด้วยชื่อผู้ใช้จริงของผู้ใช้ที่คุณสร้างขึ้น จากส่วนต่อประสานผู้ดูแลระบบคุณจะสามารถปิดใช้งานการลงทะเบียนด้วยตนเองและอัปเดตการตั้งค่า SMTP

ขอแสดงความยินดีคุณได้ติดตั้งบอร์ด Wekan Kanban บนอินสแตนซ์ Vultr Ubuntu ของคุณเรียบร้อยแล้ว



Leave a Comment

ตั้งค่า NFS Share บน Debian

ตั้งค่า NFS Share บน Debian

NFS เป็นระบบไฟล์บนเครือข่ายที่อนุญาตให้คอมพิวเตอร์เข้าถึงไฟล์ผ่านเครือข่ายคอมพิวเตอร์ คู่มือนี้จะอธิบายวิธีการเปิดเผยโฟลเดอร์ผ่าน NF

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

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

ใช้ระบบที่แตกต่างกันอย่างไร Directus 6.4 CMS เป็นระบบการจัดการเนื้อหาแบบไม่มีหัว (Headless Content Management: CMS) ที่ทรงพลังและยืดหยุ่นซึ่งให้ผู้พัฒนา

ติดตั้งเซิร์ฟเวอร์ TeamTalk บน Linux

ติดตั้งเซิร์ฟเวอร์ TeamTalk บน Linux

TeamTalk เป็นระบบการประชุมที่ช่วยให้ผู้ใช้สามารถสนทนาด้วยเสียง / วิดีโอคุณภาพสูงสนทนาผ่านข้อความถ่ายโอนไฟล์และแชร์หน้าจอ มันฉัน

การติดตั้ง Pagekit CMS บน CentOS 7

การติดตั้ง Pagekit CMS บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า

วิธีการติดตั้ง Sphinx Search Engine บน CentOS 7

วิธีการติดตั้ง Sphinx Search Engine บน CentOS 7

สฟิงซ์เป็นเครื่องมือค้นหาข้อความแบบโอเพนซอร์ซฟรีและโอเพนซอร์สซึ่งสามารถรวมเข้ากับเว็บแอปพลิเคชั่นต่าง ๆ เพื่อให้ได้คุณภาพที���รวดเร็วและสูง

การใช้คีย์ SSH ของคุณเพื่อเข้าสู่ผู้ใช้ที่ไม่ใช่รูท

การใช้คีย์ SSH ของคุณเพื่อเข้าสู่ผู้ใช้ที่ไม่ใช่รูท

Vultr มีคุณสมบัติที่อนุญาตให้คุณติดตั้งคีย์ SSH ล่วงหน้าเมื่อสร้างอินสแตนซ์ใหม่ สิ่งนี้อนุญาตให้คุณเข้าถึงผู้ใช้รูทเซิร์ฟเวอร์อย่างไรก็ตาม

สร้างเครือข่ายสังคมด้วย Diaspora บน Debian 9

สร้างเครือข่ายสังคมด้วย Diaspora บน Debian 9

ใช้ระบบที่แตกต่างกันอย่างไร Diaspora เป็นเครือข่ายโซเชียลที่ตระหนักถึงความเป็นส่วนตัวและเป็นโอเพ่นซอร์ส ในบทช่วยสอนนี้คุณจะได้เรียนรู้วิธีการตั้งค่าและกำหนดค่า po Diaspora

การติดตั้ง Fuel CMS บน Debian 9

การติดตั้ง Fuel CMS บน Debian 9

ใช้ระบบที่แตกต่างกันอย่างไร Fuel CMS เป็นระบบจัดการเนื้อหาที่ใช้ CodeIgniter ซอร์สโค้ดของมันถูกโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า

วิธีการติดตั้ง Snipe-IT บน Ubuntu 16.10

วิธีการติดตั้ง Snipe-IT บน Ubuntu 16.10

ใช้ระบบที่แตกต่างกันอย่างไร Snipe-IT เป็นเว็บแอปพลิเคชั่นฟรีและโอเพนซอร์สสำหรับการจัดการสินทรัพย์ด้านไอที มันถูกเขียนบนกรอบงาน Laravel 5.2 และการใช้งาน

วิธีการติดตั้งเครื่องมือจัดการโครงการไทก้าบน Ubuntu 16.04

วิธีการติดตั้งเครื่องมือจัดการโครงการไทก้าบน Ubuntu 16.04

ใช้ระบบที่แตกต่างกันอย่างไร ไทกะเป็นแอปพลิเคชั่นฟรีและโอเพ่นซอร์สสำหรับการจัดการโครงการ ซึ่งแตกต่างจากเครื่องมือการจัดการโครงการอื่น ๆ ไทก้าใช้ส่วนเพิ่ม

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

FTP ที่ปลอดภัยมากหรือเพียงแค่ vsFTPd เป็นซอฟต์แวร์น้ำหนักเบาที่มีความสามารถในการปรับแต่ง ในบทช่วยสอนนี้เราจะรักษาความปลอดภัยของข้อความ

วิธีการติดตั้ง GCC บน CentOS 6

วิธีการติดตั้ง GCC บน CentOS 6

CentOS ติดตามการพัฒนา Red Hat Enterprise Linux (RHEL) RHEL พยายามที่จะเป็นแพลตฟอร์มเซิร์ฟเวอร์ที่มั่นคงซึ่งหมายความว่าจะไม่รีบเร่งในการรวม

วิธีการติดตั้ง Ranger Terminal File Manager บน Linux

วิธีการติดตั้ง Ranger Terminal File Manager บน Linux

Ranger เป็นตัวจัดการไฟล์แบบบรรทัดคำสั่งที่มีการเชื่อมโยงคีย์ VI มันจัดเตรียมอินเตอร์เฟส curses ที่เรียบง่ายและดีพร้อมมุมมองบนลำดับชั้นไดเร็กทอรี

วิธีการสร้าง Brotli จากซอร์สบน Ubuntu 18.04 LTS

วิธีการสร้าง Brotli จากซอร์สบน Ubuntu 18.04 LTS

ใช้ระบบที่แตกต่างกันอย่างไร Brotli เป็นวิธีการบีบอัดแบบใหม่ที่มีอัตราการบีบอัดที่ดีกว่า GZIP ซอร์สโค้ดของมันถูกโฮสต์แบบสาธารณะบน Githu นี้

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ในบางโอกาสผู้ดูแลระบบอาจต้องสร้างบัญชีผู้ใช้และ จำกัด การเข้าถึงเพื่อจัดการไฟล์ของตัวเองผ่าน sFTP เท่านั้น

วิธีการติดตั้ง Omeka Classic 2.4 CMS บน Ubuntu 16.04 LAMP VPS

วิธีการติดตั้ง Omeka Classic 2.4 CMS บน Ubuntu 16.04 LAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร Omeka Classic 2.4 CMS เป็นแพลตฟอร์มเผยแพร่ดิจิตอลฟรีและโอเพ่นซอร์สและระบบการจัดการเนื้อหา (CMS) สำหรับการแบ่งปันดิจิต้า

ปิดใช้งานหรือ จำกัด การล็อกอินรูทผ่าน SSH บน Linux

ปิดใช้งานหรือ จำกัด การล็อกอินรูทผ่าน SSH บน Linux

การอนุญาตให้ล็อกอินรูทผ่าน SSH นั้นถือว่าเป็นการปฏิบัติด้านความปลอดภัยที่ไม่ดีทั่วทั้งอุตสาหกรรมเทคโนโลยี คุณสามารถดำเนินการที่ละเอียดอ่อนแทน

วิธีการติดตั้ง Moodle บน CentOS 7

วิธีการติดตั้ง Moodle บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Moodle เป็นแพลตฟอร์มการเรียนรู้โอเพนซอร์ซหรือระบบจัดการหลักสูตร (CMS) - ชุดซอฟต์แวร์โอเพ่นซอร์สฟรีที่ออกแบบมาเพื่อช่วย

วิธีการติดตั้ง RabbitMQ บน Ubuntu 16.04

วิธีการติดตั้ง RabbitMQ บน Ubuntu 16.04

ใช้ระบบที่แตกต่างกันอย่างไร RabbitMQ เป็นนายหน้าข้อความโอเพ่นซอร์สที่ใช้กันอย่างแพร่หลายเขียนในภาษาการเขียนโปรแกรม Erlang เป็นมิดเดิลแวร์ที่มุ่งเน้นข้อความ

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ในบทความนี้ฉันจะอธิบายวิธีสร้าง LEMP สแต็คที่ได้รับการป้องกันโดย ModSecurity ModSecurity เป็นไฟร์วอลล์เว็บแอพพลิเคชันแบบโอเพนซอร์สที่มีประโยชน์

วิธีการติดตั้ง 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