Thứ hai, 26/06/2017 | 00:00 GMT+7

Cách tạo trang trạng thái bằng bộ nhớ đệm trên Debian 8

Cachet là một trang trạng thái tự lưu trữ thay thế cho các dịch vụ được lưu trữ như StatusPage.ioStatus.io . Nó giúp bạn thông báo thời gian hoạt động và thời gian ngừng hoạt động của các ứng dụng và chia sẻ thông tin về bất kỳ sự cố ngừng hoạt động nào.

Nó được viết bằng PHP, vì vậy nếu bạn đã có server LAMP hoặc LEMP thì việc cài đặt rất dễ dàng. Nó có một giao diện rõ ràng và được thiết kế để đáp ứng để nó có thể hoạt động trên tất cả các thiết bị. Trong hướng dẫn này, ta sẽ cài đặt một trang trạng thái với Cachet trên Debian. Ngăn xếp phần mềm ta sẽ sử dụng là:

  • Cachet cho chính trang trạng thái
  • Trình soạn thảo để quản lý các phụ thuộc PHP của Cachet
  • SQLite làm database để lưu trữ dữ liệu của Cachet
  • Nginx để phục vụ trang trạng thái

Lưu ý Cachet không giám sát các trang web hoặc server của bạn trong thời gian ngừng hoạt động; Cachet ghi lại các sự cố, có thể được cập nhật thủ công qua giao diện web hoặc với API của Cachet. Nếu bạn đang tìm kiếm các giải pháp giám sát, hãy xem hướng dẫn Xây dựng để Sản xuất: Ứng dụng Web - Giám sát .

Yêu cầu

Để làm theo hướng dẫn này, bạn cần :

Bước 1 - Tạo user bộ nhớ cache

Điều đầu tiên cần làm là tạo một account user riêng để chạy Cachet. Điều này sẽ có thêm lợi ích về bảo mật và cô lập.

  • sudo useradd --create-home --shell /bin/bash cachet

Lệnh này sẽ tạo một user có tên cachet có folder chính trong /home/cachet , có shell sẽ được đặt thành /bin/bash . Mặc định là /bin/sh , nhưng nó không cung cấp đủ thông tin trong dấu nhắc . User không có password sẽ có các quyền dành riêng cho các thành phần mà Cachet sẽ sử dụng.

Bây giờ user đã được tạo, hãy cài đặt các phụ thuộc PHP.

Bước 2 - Cài đặt phụ thuộc PHP

Tiếp theo, ta cần cài đặt các phụ thuộc của Cachet, là một số gói PHP cũng như wgetunzip mà Composer sử dụng để download và extract các thư viện PHP.

  • sudo apt-get install \
  • php5-fpm php5-curl php5-apcu php5-readline \
  • php5-mcrypt php5-apcu php5-cli php5-gd php5-sqlite\
  • wget unzip

Bạn có thể tìm hiểu thêm về bất kỳ gói riêng lẻ nào từ Danh sách Phần mở rộng PHP chính thức .

Bây giờ hãy cấu hình php-fpm , Trình quản lý tiến trình FastCGI. Nginx sẽ sử dụng điều này để yêu cầu proxy tới Cachet.

Đầu tiên, tạo file sẽ lưu trữ thông tin cho Cachet mà php-fpm cần. Mở /etc/php5/fpm/pool.d/cachet.conf bằng nano hoặc editor bạn quen dùng .

  • sudo nano /etc/php5/fpm/pool.d/cachet.conf

Dán vào phần sau:

/etc/php5/fpm/pool.d/cachet.conf
[cachet] user = cachet group = cachet listen.owner = www-data listen.group = www-data listen = /var/run/php5-fpm-cachet.sock php_admin_value[disable_functions] = exec,passthru,shell_exec,system php_admin_flag[allow_url_fopen] = off request_terminate_timeout = 120s pm = ondemand pm.max_children = 5 pm.process_idle_timeout = 10s pm.max_requests = 500 chdir = / 

Lưu và đóng file .

Bạn có thể đọc thêm về các cài đặt này trong bài viết về Cách lưu trữ nhiều trang web một cách an toàn với Nginx và Php-fpm , nhưng Đây là kết quả mỗi dòng trong file này dành cho:

  • [cachet] là tên của group . Mỗi hồ bơi phải có một tên duy nhất
  • usergroup là user Linux và group mà group mới sẽ chạy. Nó giống với user mà ta đã tạo ở Bước 1.
  • listen.ownerlisten.group xác định quyền sở hữu của người nghe, tức là socket của mới php-fpm hồ bơi. Nginx phải có thể đọc socket này, vì vậy ta đang sử dụng user và group www-data theb.
  • listen chỉ định một vị trí duy nhất của file socket cho mỗi group .
  • php_admin_value cho phép bạn đặt các giá trị cấu hình PHP tùy chỉnh. Ở đây, ta đang sử dụng nó để vô hiệu hóa các chức năng có thể chạy các lệnh Linux (thi exec,passthru,shell_exec,system ).
  • php_admin_flag tương tự như php_admin_value , nhưng nó chỉ là một lựa chọn cho các giá trị boolean, tức là onoff . Ta sẽ vô hiệu hóa chức năng PHP allow_url_fopen cho phép một tập lệnh PHP mở các file từ xa và có thể bị kẻ tấn công sử dụng.
  • Tùy chọn pm cho phép bạn cấu hình hiệu suất của pool. Ta đã đặt nó thành ondemand , cung cấp sự cân bằng để giữ mức sử dụng bộ nhớ thấp và là một mặc định hợp lý. Nếu bạn có nhiều bộ nhớ, thì bạn có thể đặt nó thành static . Nếu bạn có nhiều stream CPU để làm việc, thì dynamic có thể là lựa chọn tốt hơn.
  • Tùy chọn chdir phải là / là root của hệ thống file . Điều này sẽ không được thay đổi trừ khi bạn sử dụng một tùy chọn quan trọng khác ( chroot ).

Khởi động lại php-fpm để các thay đổi có hiệu lực.

  • sudo systemctl restart php5-fpm

Nếu bạn chưa thực hiện, hãy bật dịch vụ php-fpm để nó tự động khởi động khi server được khởi động lại:

  • sudo systemctl enable php5-fpm

Bây giờ các gói PHP chung đã được cài đặt, hãy download Cachet.

Bước 3 - Download Cachet

Mã nguồn của Cachet được lưu trữ trên GitHub. Điều đó giúp bạn dễ dàng sử dụng Git để download , cài đặt và - như ta sẽ thấy ở phần sau - nâng cấp nó.

Một vài bước tiếp theo sẽ được thực hiện với quyền là user cachet , vì vậy hãy chuyển sang nó.

  • sudo su - cachet

Sao chép mã nguồn của Cachet vào một folder mới có tên là www .

  • git clone https://github.com/cachethq/Cachet.git www

Sau khi hoàn tất, hãy chuyển đến folder mới nơi mã nguồn của Cachet tồn tại.

  • cd www

Kể từ thời điểm này, bạn có tất cả lịch sử phát triển của Cachet, bao gồm các nhánh và thẻ Git. Bạn có thể xem bản phát hành ổn định mới nhất từ trang phát hành của Cachet , nhưng bạn cũng có thể xem các thẻ Git trong folder này.

Tại thời điểm xuất bản, version ổn định mới nhất của Cachet là v2.3.11. Sử dụng Git để kiểm tra version đó:

  • git checkout v2.3.11

Tiếp theo, ta hãy làm quen với file cấu hình của Cachet.

Bước 4 - Cấu hình bộ nhớ đệm

Cachet yêu cầu file cấu hình có tên .env , file này phải có để Cachet khởi động. Trong đó, bạn có thể cấu hình các biến môi trường mà Cachet sử dụng để cài đặt nó.

Hãy sao chép ví dụ cấu hình đi kèm với Cachet để backup .

  • cp .env.example .env

Có hai bit cấu hình mà ta sẽ thêm ở đây: một để cấu hình database và một để cấu hình server thư.

Đối với database , ta sẽ sử dụng SQLite. Thật dễ dàng để cấu hình và không yêu cầu cài đặt bất kỳ thành phần server bổ sung nào.

Đầu tiên, tạo file trống sẽ lưu trữ database của ta :

  • touch ./database/database.sqlite

Tiếp theo, mở .env bằng nano hoặc editor bạn quen dùng để cấu hình cài đặt database .

  • nano .env

Bởi vì ta sẽ sử dụng SQLite, ta cần xóa nhiều cài đặt. Định vị khối cài đặt bắt đầu bằng DB_ :

.Env root
. . . DB_DRIVER=mysql DB_HOST=localhost DB_DATABASE=cachet DB_USERNAME=homestead DB_PASSWORD=secret DB_PORT=null DB_PREFIX=null . . . 

Xóa mọi thứ ngoại trừ dòng DB_DRIVER và thay đổi nó từ mysql thành sqlite .

Cập nhật .env
. . . DB_DRIVER=sqlite . . . 

Ghi chú:
Bạn có thể kiểm tra các tùy chọn database của Cachet cho tất cả các tên trình điều khiển database có thể có nếu bạn đang sử dụng database khác, như MySQL hoặc PostgreSQL.

Tiếp theo, bạn cần điền chi tiết server SMTP của bạn cho cài đặt MAIL_* :

.env
. . . MAIL_HOST=smtp.example.com MAIL_PORT=25 MAIL_USERNAME=smtp_username MAIL_PASSWORD=smtp_password MAIL_ADDRESS=notifications@example.com MAIL_NAME="Status Page" . . . 

Ở đâu:

  • MAIL_HOST phải là URL server thư của bạn.
  • MAIL_PORT phải là cổng mà server thư nghe trên đó (thường là 25 ).
  • MAIL_USERNAME phải là tên user để cài đặt account SMTP (thường là toàn bộ địa chỉ email).
  • MAIL_PASSWORD phải là password để cài đặt account SMTP.
  • MAIL_ADDRESS phải là địa chỉ email mà từ đó thông báo cho người đăng ký sẽ được gửi.
  • MAIL_NAME là tên sẽ xuất hiện trong các email được gửi đến người đăng ký. Lưu ý bất kỳ giá trị nào có khoảng trắng trong chúng phải được chứa trong dấu ngoặc kép.

Bạn có thể tìm hiểu thêm về trình điều khiển thư của Cachet trong mã nguồn mail.phptài liệu thư tương ứng từ Laravel .

Sau khi bạn hoàn tất chỉnh sửa file , hãy lưu và thoát. Tiếp theo, bạn cần cài đặt database của Cachet.

Bước 5 - Di chuyển database

Các thư viện PHP mà Cachet phụ thuộc vào được xử lý bởi Composer. Đầu tiên, hãy đảm bảo bạn đang ở đúng folder .

  • cd /home/cachet/www

Sau đó, chạy Composer và cài đặt các phần phụ thuộc, ngoại trừ các phần phụ thuộc được sử dụng cho mục đích phát triển. Tùy thuộc vào tốc độ kết nối Internet của bạn, quá trình này có thể mất một chút thời gian.

  • composer install --no-interaction --no-dev -o --no-scripts

Tạo schemas database và chạy quá trình di chuyển.

  • php artisan migrate

Lưu ý: Trong version ổn định mới nhất ( 2.3.11 ), có một lỗi khi sử dụng SQLite yêu cầu bạn chạy lệnh migrate trước bất kỳ thứ gì khác.

Nhập yes khi được hỏi. Bạn sẽ thấy kết quả như thế này:

Output
************************************** * Application In Production! * ************************************** Do you really wish to run this command? (yes/no) [no]: > yes Migration table created successfully. Migrated: 2015_01_05_201324_CreateComponentGroupsTable ... Migrated: 2016_06_02_075012_AlterTableMetricsAddOrderColumn Migrated: 2016_06_05_091615_create_cache_table

Lệnh tiếp theo, php artisan app:install , có một bản backup database , chạy di cư, và tự động tạo phím ứng dụng (tức là APP_KEY giá trị trong .env ) mà Cachet sử dụng cho tất cả các mã hóa của nó.

Cảnh báo: Không bao giờ thay đổi giá trị APP_KEY có trong file .env sau khi bạn đã cài đặt và bắt đầu sử dụng Cachet trong môi trường production . Điều này sẽ dẫn đến việc tất cả dữ liệu được mã hóa / băm của bạn bị mất. Sử dụng php artisan app:install chỉ php artisan app:install lệnh một lần. Vì lý do này, bạn nên giữ một bản backup của .env .

Hoàn tất cài đặt.

  • php artisan app:install

Đầu ra sẽ như thế này:

Output
Clearing settings cache... Settings cache cleared! . . . Clearing cache... Application cache cleared! Cache cleared!

Bước chủ động cuối cùng, hãy xóa bộ nhớ đệm của Cachet để tránh 500 lỗi.

  • rm -rf bootstrap/cache/*

Bây giờ database đã sẵn sàng, ta có thể cấu hình hàng đợi tác vụ của Cachet.

Bước 6 - Cấu hình Hàng đợi Tác vụ

Cachet sử dụng hàng đợi để lập lịch các việc cần chạy không đồng bộ, chẳng hạn như gửi email. Cách được khuyến khích là sử dụng Supervisor , một trình quản lý tiến trình cung cấp một giao diện nhất quán qua đó các quy trình có thể được giám sát và kiểm soát.

Trước tiên, hãy đảm bảo bạn đăng xuất khỏi phiên của user cachet và chuyển trở lại user không phải root có quyền sudo của bạn.

  • exit

Cài đặt Trình giám sát.

  • sudo apt-get install supervisor

Sau đó tạo file chứa thông tin mà Người giám sát cần từ Cachet. Mở /etc/supervisor/conf.d/cachet.conf .

  • sudo nano /etc/supervisor/conf.d/cachet.conf

Tệp này cho Người giám sát biết cách chạy và quản lý quy trình của nó. Bạn có thể đọc thêm về Supervisor trong bài viết Cách cài đặt và quản lý Supervisor trên Ubuntu và Debian VPS .

Và thêm các nội dung sau. Đảm bảo cập nhật folder và tên user của Cachet nếu bạn đã sử dụng các mã nguồn khác nhau.

/etc/supervisor/conf.d/cachet.conf
[program:cachet-queue] command=php artisan queue:work --daemon --delay=1 --sleep=1 --tries=3 directory=/home/cachet/www/ redirect_stderr=true autostart=true autorestart=true user=cachet 

Lưu file , sau đó khởi động lại Người giám sát.

  • sudo systemctl restart supervisor

Bật dịch vụ Người giám sát để nó tự động khởi động khi server được khởi động lại.

  • sudo systemctl enable supervisor

Database và hàng đợi tác vụ đã sẵn sàng; thành phần tiếp theo cần cài đặt là web server .

Bước 7 - Cấu hình Nginx

Ta sẽ sử dụng Nginx làm proxy web server sẽ nói chuyện với php-fpm . Phần yêu cầu có hướng dẫn về cách cài đặt Nginx với certificate TLS do Let's Encrypt cấp.

Hãy thêm file cấu hình Nginx cần thiết cho Cachet. Mở /etc/nginx/sites-available/cachet.conf bằng nano hoặc editor bạn quen dùng .

  • sudo nano /etc/nginx/sites-available/cachet.conf

Đây là toàn bộ văn bản của file mà bạn nên sao chép và paste vào . Đảm bảo thay thế example.com bằng domain của bạn. Chức năng của từng phần được mô tả chi tiết hơn bên dưới.

/etc/nginx/sites-available/cachet.conf
server {     server_name  example.com;     listen 80;     return 301 https://$server_name$request_uri; }  server {     listen 443;     server_name  example.com;      root /home/cachet/www/public;     index index.php;      ssl on;     ## Location of the Let's Encrypt certificates     ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;     ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;      ## From https://cipherli.st/     ## and https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html     ssl_protocols TLSv1 TLSv1.1 TLSv1.2;     ssl_prefer_server_ciphers on;     ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";     ssl_ecdh_curve secp384r1;     ssl_session_cache shared:SSL:10m;     ssl_session_tickets off;     ssl_stapling on;     ssl_stapling_verify on;     resolver 8.8.8.8 8.8.4.4 valid=300s;     resolver_timeout 5s;     ## Disable preloading HSTS for now.  You can use the commented out header line that includes     ## the "preload" directive if you understand the implications.     #add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";     add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";     add_header X-Frame-Options DENY;     add_header X-Content-Type-Options nosniff;     ssl_buffer_size 1400;      ssl_dhparam /etc/ssl/certs/dhparam.pem;      location / {         try_files $uri /index.php$is_args$args;     }      location ~ \.php$ {         include fastcgi_params;         fastcgi_pass unix:/var/run/php5-fpm-cachet.sock;         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;         fastcgi_index index.php;         fastcgi_keep_conn on;     } } 

Đây là những gì mỗi phần của file này làm.

Khối server đầu tiên chuyển hướng tất cả truy cập HTTP sang HTTPS:

Một phần cachet.conf
server {     server_name example.com;     listen 80;     return 301 https://$server_name$request_uri; }  . . . 

Khối server thứ hai chứa thông tin cụ thể về cài đặt này, như chi tiết SSL và cấu hình php-fpm .

Chỉ thị root cho Nginx biết vị trí folder root của Cachet. Là phải trỏ đến các public folder và vì ta nhân bản Cachet trong /home/cachet/www/ , nó cuối cùng sẽ trở thành root /home/cachet/www/public; .

Một phần cachet.conf
. . . server {     listen 443;     server_name  example.com;      root /home/cachet/www/public;     index index.php;     . . . } 

Chứng chỉ SSL nằm trong folder Let's Encrypt, folder này sẽ được đặt theo domain của bạn:

Một phần cachet.conf
. . . server {     . . .     ssl on;     ## Location of the Let's Encrypt certificates     ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;     ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;     . . . } 

Phần còn lại của các tùy chọn SSL được lấy trực tiếp từ hướng dẫn Nginx và Let's Encrypt :

Một phần cachet.conf
. . . server {     . . .     ## From https://cipherli.st/     ## and https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html     ssl_protocols TLSv1 TLSv1.1 TLSv1.2;     ssl_prefer_server_ciphers on;     ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";     ssl_ecdh_curve secp384r1;     ssl_session_cache shared:SSL:10m;     ssl_session_tickets off;     ssl_stapling on;     ssl_stapling_verify on;     resolver 8.8.8.8 8.8.4.4 valid=300s;     resolver_timeout 5s;     ## Disable preloading HSTS for now.  You can use the commented out header line that includes     ## the "preload" directive if you understand the implications.     #add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";     add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";     add_header X-Frame-Options DENY;     add_header X-Content-Type-Options nosniff;     ssl_buffer_size 1400;      ssl_dhparam /etc/ssl/certs/dhparam.pem;     . . . } 

Phần location ~ \.php$ cho Nginx biết cách cung cấp các file PHP. Phần quan trọng nhất là trỏ đến file Unix socket mà ta đã sử dụng khi tạo /etc/php5/fpm/pool.d/cachet.conf . Cụ thể, đó là /var/run/php5-fpm-cachet.sock .

Một phần cachet.conf
. . . server {     . . .     location / {         try_files $uri /index.php$is_args$args;     }      location ~ \.php$ {         include fastcgi_params;         fastcgi_pass unix:/var/run/php5-fpm-cachet.sock;         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;         fastcgi_index index.php;         fastcgi_keep_conn on;     } } 

Lưu file nếu bạn chưa có.

Bây giờ cấu hình Cachet cho Nginx đã được tạo, hãy tạo một softlink đến folder sites-enabled , vì đây là nơi Nginx tìm và chọn các file cấu hình để sử dụng:

  • sudo ln -s /etc/nginx/sites-available/cachet.conf /etc/nginx/sites-enabled/cachet.conf

Khởi động lại Nginx để các thay đổi có hiệu lực.

  • sudo systemctl restart nginx

Và kích hoạt dịch vụ Nginx để nó tự động khởi động khi server được khởi động lại.

  • sudo systemctl enable nginx

Đó là nó! Nếu bây giờ bạn chuyển đến domain trong trình duyệt của bạn , bạn sẽ thấy trang cài đặt của Cachet. Hãy đi qua nó.

Bước 8 - Hoàn tất cài đặt ban đầu của Cachet

Phần còn lại của cài đặt Cachet được thực hiện thông qua GUI trong trình duyệt của bạn. Nó liên quan đến việc đặt tên trang web và múi giờ cũng như tạo account administrator . Có ba bước ( cài đặt môi trường, trang trạng thái và account administrator ) và bạn luôn có thể thay đổi cấu hình sau này trong console cài đặt của Cachet.

Cài đặt môi trường

Bước cấu hình đầu tiên là Cài đặt Môi trường.

Lưu ý: Phiên bản Cachet mà ta đang sử dụng có lỗi khiến cài đặt email không được hiển thị trong trang Cài đặt môi trường, ngay cả khi bạn đã cài đặt chúng trong .env . Điều này sẽ được khắc phục trong version 2.4.

Các trường phải được điền như sau:

  • Trình điều khiển bộ nhớ cache phải là ACP (u) .
  • Trình điều khiển phiên phải là ACP (u) .
  • Trình điều khiển Thư phải là SMTP .
  • Server Thư phải là địa chỉ server email của bạn.
  • Địa chỉ Thư từ phải là địa chỉ email mà từ đó các thông báo đến người đăng ký sẽ được gửi.
  • Tên user Thư phải là tên user để cài đặt account SMTP (thường là toàn bộ địa chỉ email của bạn).
  • Mật khẩu Thư phải là password để cài đặt account SMTP.

Nhấn Next để sang bước tiếp theo.

Cài đặt trang trạng thái

Trong phần này, bạn cài đặt tên trang web, domain trang web, múi giờ và ngôn ngữ.

Lưu ý: Cachet có hỗ trợ cho nhiều ngôn ngữ, nhưng đây là một dự án hướng tới cộng đồng, nghĩa là có thể có một số chuỗi chưa được dịch sang các ngôn ngữ không phải tiếng Anh. Bạn có thể xem danh sách các ngôn ngữ được hỗ trợ , danh sách này cũng bao gồm phần trăm nội dung đã dịch.

Các trường phải được điền như sau:

  • Tên trang web: Tên sẽ xuất hiện trong trang tổng quan của bạn.
  • Tên domain trang web: FQDN bạn đã chọn cho Cachet.
  • Chọn múi giờ của bạn: Chọn múi giờ tùy thuộc vào đối tượng của bạn. Một mặc định tốt là chọn UTC.
  • Chọn ngôn ngữ của bạn: Chọn ngôn ngữ mà giao diện của Cachet sẽ sử dụng.
  • Hiển thị hỗ trợ cho Cachet: Nếu bạn chọn tùy chọn này, thông báo Powered by Cachet sẽ được hiển thị ở chân trang của trang tổng quan công khai của bạn.

Nhấn Next để sang bước tiếp theo.

Cài đặt account administrator

Cuối cùng, cài đặt account administrator . Chọn tên user của bạn, nhập địa chỉ email hợp lệ và password mạnh.

Nhấp vào Hoàn thành cài đặt để lưu tất cả các thay đổi.

Hoàn thành cài đặt

Trên trang Complete Setup, bạn sẽ được thông báo rằng Cachet đã được cấu hình thành công. Đến đây bạn có thể nhấp vào nút Chuyển đến console để đăng nhập bằng thông tin đăng nhập administrator của bạn và truy cập trang console của Cachet.

Cachet hiện đã được cài đặt đầy đủ và hoạt động. Bước cuối cùng bao gồm cách nâng cấp Cachet trong tương lai.

Bước 9 - Nâng cấp bộ nhớ đệm

Sử dụng Git giúp bạn dễ dàng nâng cấp khi có version Cachet mới. Tất cả những gì bạn cần làm là kiểm tra thẻ có liên quan và sau đó chạy quá trình di chuyển database .

Lưu ý: Bạn nên backup Cachet và database của nó trước khi cố gắng nâng cấp lên version mới. Đối với SQLite, bạn chỉ cần sao chép file database/database.sqlite .

Đầu tiên, chuyển sang user cachet và chuyển đến folder cài đặt của Cachet.

  • sudo su - cachet
  • cd /home/cachet/www

Bạn có thể tùy chọn bật trang bảo trì.

  • php artisan down

Tìm nạp mã Cachet mới nhất từ GitHub.

  • git fetch --all

Và liệt kê tất cả các thẻ.

  • git tag -l

Bạn sẽ thấy tất cả các thẻ hiện tại bắt đầu bằng chữ v . Bạn có thể nhận thấy một số đang ở trạng thái beta hoặc Ứng cử viên phát hành (RC). Bởi vì đây là một server production , bạn có thể bỏ qua những điều đó. Bạn cũng có thể truy cập trang phát hành Cachet để xem thẻ mới nhất là gì.

Khi bạn tìm thấy thẻ bạn muốn sử dụng để nâng cấp, hãy sử dụng Git để xem thẻ đó. Ví dụ: nếu bạn nâng cấp lên version 2.4.0, bạn sẽ sử dụng:

  • git checkout v2.4.0

Xóa bộ nhớ cache của Cachet trước khi tiếp tục.

  • rm -rf bootstrap/cache{,t}/*

Tiếp theo, nâng cấp các phần phụ thuộc của Composer , thường chứa các bản sửa lỗi, cải tiến hiệu suất và các tính năng mới.

  • composer install --no-interaction --no-dev -o --no-scripts

Cuối cùng, chạy quá trình di chuyển.

  • php artisan app:update

Nếu bạn đã bật trang bảo trì, bây giờ bạn có thể chạy lại quyền truy cập.

  • php artisan up

Phiên bản mới của Cachet sẽ được cài đặt và chạy.

Kết luận

Bạn đã cài đặt Cachet với SSL được SQLite hỗ trợ và biết cách duy trì nó với Git. Bạn có thể chọn các database khác, như MySQL hoặc PostgreSQL. Để khám phá thêm các tùy chọn của Cachet, hãy xem tài liệu chính thức của Cachet .


Tags:

Các tin liên quan