Laravel: Tìm hiểu về homestead (Phần 1)

laravel cố gắng làm cho toàn bộ trải nghiệm phát triển php trở nên thú vị, bao gồm cả môi trường phát triển tại địa phương của bạn. vagrant cung cấp một cách đơn giản và thuận tiện để quản lý các máy ảo.

laravel homestead là phiên bản đóng gói sẵn chính thức của hộp vagrant cung cấp cho bạn một môi trường tuyệt vời, nơi bạn không phải cài đặt php, máy chủ web hoặc bất kỳ phần mềm nào khác trong môi trường cục bộ của mình. Đừng lo lắng về hệ điều hành của bạn là gì? hộp lang thang có mọi thứ đầy đủ. Nếu xảy ra sự cố, bạn có thể phá hủy và tạo lại một chiếc hộp chỉ sau vài phút!

homestead có thể chạy trên windows, mac hoặc linux, bao gồm máy chủ web nginx, php 7.1, mysql, postgres, redis, memcached, node và mọi thứ bạn cần để triển khai ứng dụng laravel.

phần mềm bao gồm

  • ubuntu 16.04
  • git
  • php 7.1
  • nginx
  • mysql
  • mariadb
  • sqlite3
  • postgres
  • nhà soạn nhạc
  • nút (với sợi, bower, grunt và gulp)
  • redis
  • memcached
  • beantalkd
  • mailhog
  • ngrok

các bước đầu tiên

Trước khi chạy môi trường quen thuộc, bạn cần cài đặt virtualbox 5.x, vmware hoặc parallels, cũng như vagrant. Tất cả các phần mềm trên đều cung cấp giao diện người dùng và rất dễ cài đặt cho tất cả các hệ điều hành phổ biến.

Để sử dụng nhà cung cấp vmware, bạn phải mua vmware fusion / workstation và plugin vmware vagrant. Mặc dù không miễn phí nhưng vmware có thể cung cấp hiệu suất truy cập thư mục chia sẻ nhanh hơn.

Để sử dụng trình cung cấp song song, bạn phải cài đặt plugin parallels vagrant. nó miễn phí.

cài đặt hộp bum nông trại

khi bạn đã cài đặt virtualbox / vmware và vagrant, bạn cần thêm hộp laravel / homestead bằng lệnh terminal. Sẽ mất vài phút để tải xuống tùy thuộc vào tốc độ internet của bạn nhanh hay chậm:

nếu dòng lệnh không thành công, hãy đảm bảo thông báo lỗi của bạn được cập nhật.

cơ sở làm nhà trọ

bạn có thể cài đặt homestead bằng cách sao chép từ kho lưu trữ. cân nhắc sao chép thư mục homestead vào thư mục “home” của bạn để homestead có thể hoạt động như một máy chủ lưu trữ cho tất cả các dự án laravel của bạn:

Bạn nên tham khảo phiên bản homestead được gắn thẻ vì nhánh chính không phải lúc nào cũng ổn định. bạn có thể tìm thấy phiên bản ổn định mới nhất trên trang phát hành github:

Khi bạn đã nhân bản kho lưu trữ homestead, hãy chạy lệnh bash init.sh từ thư mục homestead để tạo tệp cấu hình homestead.yaml. tệp homestead.yaml sẽ được đặt trong thư mục homestead:

cấu hình trang trại

định cấu hình nhà cung cấp của bạn từ khóa nhà cung cấp trong tệp homestead.yaml cho biết nhà cung cấp nào cần sử dụng: virtualbox, vmware_fusion, vmware_workstation hoặc parallels. bạn có thể định cấu hình nhà cung cấp theo cách bạn muốn:

cài đặt thư mục được chia sẻ

thuộc tính thư mục

của tệp homestead.yaml liệt kê tất cả các thư mục bạn muốn chia sẻ với môi trường homestead. nếu bất kỳ tệp nào trong thư mục này thay đổi, chúng sẽ được đồng bộ hóa giữa môi trường cục bộ và môi trường gia đình. bạn có thể định cấu hình bao nhiêu thư mục chia sẻ tùy ý:

để bật nfs, chỉ cần thêm một cờ đơn giản vào cài đặt chia sẻ thư mục của bạn:

Bạn cũng có thể chuyển bất kỳ tùy chọn nào được hỗ trợ bởi các thư mục được đồng bộ hóa của vagrant bằng cách liệt kê chúng trong khóa tùy chọn:

cấu hình trang web nginx

nó không tương thích với nginx? Không vấn đề gì. quyền sở hữu trang web cho phép bạn dễ dàng gán một “miền” cho một thư mục trong môi trường gia đình của bạn. cài đặt trang web của bạn được bao gồm trong tệp homestead.yaml. một lần nữa, bạn có thể thêm nhiều trang web vào môi trường gia đình của mình nếu bạn cần. homestead có thể hoạt động thoải mái, ảo hóa thuận tiện cho mọi dự án laravel mà bạn thực hiện:

Nếu bạn thay đổi quyền sở hữu các trang web sau khi cung cấp hộp homestead, bạn sẽ cần chạy lại lệnh vagrant reload -provision để cập nhật cấu hình nginx trên máy ảo.

tệp máy chủ lưu trữ

bạn cần thêm “miền” cho các trang web nginx vào tệp máy chủ lưu trữ trên máy của mình. tệp máy chủ lưu trữ sẽ chuyển hướng các yêu cầu của bạn đến trang web nhà dân đến máy chủ nhà cửa của bạn. trên mac và linux, nó nằm trong / etc / hosts. trong windowsns nó nằm trong c: windows system32 drivers etc hosts. dòng bạn cần thêm vào tệp này sẽ giống như sau:

Bạn phải đảm bảo rằng địa chỉ ip được chỉ định là địa chỉ được đặt trong tệp homestead.yaml. sau khi bạn đã thêm tên miền vào tệp máy chủ và chạy hộp lang thang, bạn sẽ có thể kết nối với nó thông qua trình duyệt:

khởi chạy hộp lang thang

sau khi chỉnh sửa homestead.yaml theo ý bạn, hãy chạy lệnh vagrant up từ thư mục homestead. vagrant sẽ khởi động máy ảo và tự động định cấu hình thư mục chia sẻ và trang nginx.

Để phá hủy một máy ảo, bạn có thể sử dụng lệnh vagrant Dest -force.

cài đặt cho mỗi dự án

Thay vì cài đặt nhà dân trên toàn cầu và chia sẻ cùng một hộp nhà ở cho tất cả các dự án, bạn có thể định cấu hình từng trang trại cho từng dự án. cài đặt homestead cho mỗi dự án sẽ có lợi nếu bạn muốn bao gồm một tệp vagrant vào dự án của mình, cho phép những người khác làm việc trên dự án chỉ với lệnh vagrant up.

để cài đặt nhà dân trực tiếp vào dự án của bạn, hãy sử dụng trình soạn nhạc:

sau khi cài đặt homestead, hãy sử dụng lệnh make để tạo các tệp vagrantfile và homestead.yaml trong thư mục gốc của dự án. lệnh make sẽ tự động định cấu hình các trang web và thư mục trong tệp homestead.yaml.

mac / linux:

cửa sổ:

sau đó chạy lệnh vagrant up từ thiết bị đầu cuối và truy cập dự án tại http://homestead.app trong trình duyệt. hãy nhớ rằng bạn sẽ cần thêm homestead.app hoặc tên miền bạn chọn vào tệp / etc / hosts.

.

cài đặt mariadb

Nếu bạn thích sử dụng mariadb thay vì mysql, bạn có thể thêm tùy chọn mariadb vào tệp homestead.yaml. tùy chọn này sẽ gỡ bỏ mysql và cài đặt mariadb. mariadb sẽ hoạt động thay vì mysql, vì vậy bạn cũng có thể sử dụng trình điều khiển cơ sở dữ liệu mysql trong thiết lập cơ sở dữ liệu của mình:

tài liệu: https://laravel.com/docs/5.4/homestead

Related Articles

Back to top button