Tôi cũng đang xem xét điều này, cách tiếp cận tôi đã thực hiện cho đến nay là:
Khởi động máy chủ:
- Thiết lập dự án với
composer --create-project ... --no-dev
một src
thư mục (mặc dù tôi vẫn thấy rất nhiều dev cruft đi qua)
- Cài đặt ứng dụng, Biên dịch tệp tĩnh, nâng cấp db, v.v.
- Đặt tất cả các quyền chính xác
Cái nào sẽ cho tôi một cổ phiếu, chạy cửa hàng từ thư mục src của tôi (nhưng webroot của tôi không trỏ đến đó)
Sau đó, quá trình triển khai của tôi:
- Tạo một thư mục phát hành mới
- rsync các tập tin src vào bản phát hành của tôi (không bao gồm cruft)
- triển khai và giải nén các tùy chỉnh của tôi trên đầu trang (một số ít tệp chủ đề và mô-đun)
- cài đặt bất kỳ mô-đun magento của bên thứ ba thông qua kết nối magento
- trỏ máy chủ lưu trữ web của tôi vào bản phát hành mới của tôi (với một liên kết tượng trưng)
- duyên dáng tải lại máy chủ web của tôi
Điều này cho phép tôi duy trì mã lõi Magento tách biệt với mã riêng của mình, sử dụng trình soạn thảo để cập nhật mã .. và tôi không cần gửi 39.102 !!! các tệp với mỗi lần triển khai hoặc chạy các lệnh tổng hợp tại thời điểm triển khai ..
... Muốn nghe về các phương pháp khác hoặc để thực hành tốt nhất về vấn đề này, và id cũng thích biết những tập tin nào thực sự cần thiết cho sản xuất và đó là dev .. vì vậy tôi có thể giữ sạch webroot của mình.
Sau khi tôi kết thúc, tôi sẽ có một playbook ansible và một số lệnh Fabric để sắp xếp cấu hình và triển khai, tôi rất vui được chia sẻ.
Mong rằng sẽ giúp