conf: docker
This commit is contained in:
+17
-8
@@ -50,38 +50,46 @@ http://localhost:8888
|
||||
|
||||
## 3. Cơ chế cấu hình môi trường (.env)
|
||||
|
||||
* File `.env` chính của Laravel vẫn nằm ở thư mục root để phục vụ máy local.
|
||||
* Khi chạy trong container Docker, hệ thống sẽ sử dụng file **`docker/env/.env.app`** để ghi đè các cấu hình cần thiết (ví dụ: `DB_HOST=host.docker.internal` giúp PHP container kết nối ra cơ sở dữ liệu trên máy thật).
|
||||
- File `.env` chính của Laravel vẫn nằm ở thư mục root để phục vụ máy local.
|
||||
- Khi chạy trong container Docker, hệ thống sẽ sử dụng file **`docker/env/.env.app`** để ghi đè các cấu hình cần thiết (ví dụ: `DB_HOST=host.docker.internal` giúp PHP container kết nối ra cơ sở dữ liệu trên máy thật).
|
||||
|
||||
---
|
||||
|
||||
## 4. Các lệnh cần chạy thủ công khi cập nhật code
|
||||
|
||||
### 4.1. Khi thêm/cập nhật thư viện mới (`composer.json`)
|
||||
|
||||
Khi cập nhật hoặc cài đặt gói package PHP mới, bạn cần chạy lệnh cài đặt **bên trong container**:
|
||||
|
||||
```bash
|
||||
docker compose -f docker/docker-compose.yml exec app composer install
|
||||
```
|
||||
|
||||
### 4.2. Khi cập nhật giao diện (CSS / JS / Tailwind classes mới)
|
||||
|
||||
Do Docker container không cài Node.js, bạn cần chạy các lệnh compile frontend trực tiếp **ở máy thật (host)**:
|
||||
* **Chạy chế độ phát triển (Hot Reload):**
|
||||
|
||||
- **Chạy chế độ phát triển (Hot Reload):**
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
* **Build production tĩnh:**
|
||||
- **Build production tĩnh:**
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
### 4.3. Khi cập nhật Database (Migrations)
|
||||
|
||||
Để cập nhật cơ sở dữ liệu khi có migrations mới:
|
||||
|
||||
```bash
|
||||
docker compose -f docker/docker-compose.yml exec app php artisan migrate
|
||||
```
|
||||
|
||||
### 4.4. Khi chỉnh sửa file `.env` hoặc `.env.app`
|
||||
|
||||
Bạn cần khởi động lại container để cập nhật biến môi trường mới và tiến hành xóa cache cấu hình:
|
||||
|
||||
```bash
|
||||
# 1. Restart container app
|
||||
docker compose -f docker/docker-compose.yml restart app
|
||||
@@ -94,20 +102,21 @@ docker compose -f docker/docker-compose.yml exec app php artisan config:clear
|
||||
|
||||
## 5. Các lệnh tiện ích khác
|
||||
|
||||
* **Truy cập vào Bash của container app:**
|
||||
- **Truy cập vào Bash của container app:**
|
||||
```bash
|
||||
docker compose -f docker/docker-compose.yml exec app bash
|
||||
```
|
||||
* **Xem log Laravel thời gian thực:**
|
||||
- **Xem log Laravel thời gian thực:**
|
||||
```bash
|
||||
docker compose -f docker/docker-compose.yml exec app tail -f storage/logs/laravel.log
|
||||
```
|
||||
* **Dọn dẹp toàn bộ cache của Laravel:**
|
||||
- **Dọn dẹp toàn bộ cache của Laravel:**
|
||||
```bash
|
||||
docker compose -f docker/docker-compose.yml exec app php artisan optimize:clear
|
||||
```
|
||||
* **Dừng các container:**
|
||||
- **Dừng các container:**
|
||||
```bash
|
||||
docker compose -f docker/docker-compose.yml down
|
||||
```
|
||||
|
||||
docker compose -f docker/docker-compose.yml exec app php artisan key:generate
|
||||
|
||||
Vendored
@@ -16,4 +16,9 @@ touch storage/logs/laravel.log storage/logs/query.log
|
||||
chmod 666 storage/logs/laravel.log storage/logs/query.log
|
||||
chmod -R 777 storage bootstrap/cache
|
||||
|
||||
# Tạo symlink cho storage nếu chưa có (để public file ảnh, upload,...)
|
||||
if [ ! -L "public/storage" ]; then
|
||||
php artisan storage:link
|
||||
fi
|
||||
|
||||
exec "$@"
|
||||
|
||||
Reference in New Issue
Block a user