Deploy với Ubuntu VPS (Phần 2) Deploy project Laravel hoàn chỉnh trên VPS

Tram Ho

Lời mở đầu

Xin chào các bạn, trong bài viết trước mình đã hướng dẫn các bạn tạo một VPS trên Vulter. Bài viết này mình sẽ hướng dẫn các bạn các bước chi tiết để có thể deploy một project Laravel hoàn chỉnh lên VPS. Bắt đầu thôi

1. Cài đặt apache2

1.1 Cài đặt apache2

1.2 Điều chỉnh firewall

  • Sẽ hiển thị tab như thế này
    image.png
  • Có 3 cấu hình sẵn của apache2
    • Apache: Cấu hình này chỉ mở cổng 80 (lưu lượng web bình thường không được mã hóa)
    • Apche Full: Cấu hình này mở cả cổng 80 (lưu lượng web bình thường, không được mã hóa) và cổng 443 (lưu lượng được mã hóa TLS/SSL)
    • Apache Secure: Cấu hình này chỉ mở cổng 80 (lưu lượng web bình thường, không được mã hóa)
      Bạn nên bật cấu hình hạn chế nhất cho phép lưu lượng mà bạn định cấu hình. Vultr chưa bật cấu hình trên cổng 80 nên bạn cần phải bật cổng này

  • Để kiểm tra sự thay đổi, dùng câu lệnh sau:

  • Nếu terminal hiển thị như thế này là ok
    image.png
  • Kiểm tra lại nếu truy cập vào host hiển thị giao diện apache như thế này là oke
    image.png

2. Cài đặt php

Bài viết này mình sẽ hướng dẫn các bạn cài đặt php8.0

  • Enabling PHP Repository

  • Installing PHP 8.0 with Apache

  • Install php8.0 extentsions

– Restart apache

  • Configure Apache with PHP-FPM

Php-FPM là một trình quản lý quy trình FastCGI cho PHP

Mặc định php-fpm không được bật trong apche. Để bật nó

  • Restart apache

3. Cài đặt mysql

Để chắc chắn server mysql đang chạy

  • Cấu hình mysql
    Mình sẽ hướng dẫn các bạn tự cài đặt mật khẩu cho mình.

Để truy cập lại vào mysql. Chạy lệnh sau và nhập mật khẩu của bạn.

Ngoài ra các bạn có thể cài mật khẩu nâng cao bằng câu lệnh sau

  • Tạo một database

4. Tạo user deploy

Các bạn dùng câu lệnh sau để tạo user deploy. Nhập mật khẩu và các thông tin hoặc bạn có thể enter để tự động nhập các thông tin mặc định

  • Cấp quyền sudo cho user deploy

  • Taọ key cho user deploy

  • Chuyển user chạy tiến trình apache thành deploy

Các bạn tìm đến dòng mà có Usergroup image.png
Sửa thành

Chuyển owner /var/www/html

  • Chuyển user chạy tiến trình php-fpm thành deploy

Sửa config

Chuyển owner của php8.0-fpm.sock

5. Cài đặt project

  • Thêm deploy keys vào trong repository trên github. Các bạn lấy public key trong folder .ssh/id_rsa.pub. Lấy key đó và tạo trên github như thế này
    image.png
  • Khi kết nối thành công các bạn có thể dùng ssh để clone project

  • Cài đặt composer

  • Cài đặt nodeJs

Bài viết này mình sẽ hướng dẫn các bạn cài đặt NodeJs bằng Nvm

  • Install Nvm

  • Xem danh sách version Nodejs

Tuỳ chỉnh môi trường trong file .env

  • Generate key

  • Restart php-fpm

6. Cấu hình vitual host

  • Sửa DocumentRoot tới đường dẫn project của bạn`

  • Cấu hình apache2.conf

Thêm cấu hình cho đường dẫn đến project của bạn

  • Restart apache2

  • Thành quả:

image.png

Kết luận

Như vậy trong bài viết này mình đã hướng dẫn các bạn cách deploy bằng cơm một project Laravel lên VPS. Hi vọng bài viết này sẽ giúp ích được cho các bạn. Nếu có thắc mắc hay có câu hỏi đừng ngần ngại mà hãy góp ý cho mình. Mình sẵn sàng đón nhận. Trong bài viết tới mình sẽ hướng dẫn các bạn deploy dự án một cách tự động bằng Deployer. Hi vọng sẽ nhận được sự ủng hộ của các bạn

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo