主題 - daniel-qa/Laradock GitHub Wiki
主題
必要安裝套件
- Composer:
Composer 是一個 PHP 的依賴管理工具,可以透過以下指令安裝:
sudo apt-get update
sudo apt-get install composer
PHP 設定
- 用 yml 檔設定
services:
php:
environment:
PHP_INI_MAX_EXECUTION_TIME: 3600
- 用設定檔設定(.ini)
用 phpinfo(), 先找出設定檔.(通常有 php.ini,和 laravel.ini)
如果修改 php.ini 不生效的話,則修改 laravel.ini ; (程式以最後載入的設定值為主)
- ini 位置一般在 :
/usr/local/etc/php/php.ini
/usr/local/etc/php/conf.d/laravel.ini
p.s 修改 laravel.ini 需要重 build php-fpm 鏡像
p.s 重 build 如果遇到問題,修改 sources.list
Alain Hernandez為Docker的使用者提供了一套解法。請在執行「apt-get update」之前,加上以下程式碼,以此修改更新網址:
#Update stretch repositories
RUN sed -i s/deb.debian.org/archive.debian.org/g /etc/apt/sources.list
RUN sed -i 's|security.debian.org|archive.debian.org/|g' /etc/apt/sources.list
RUN sed -i '/stretch-updates/d' /etc/apt/sources.list
上述的做法是把更新網址從與原本的「security」改成了「archive」,這樣即使系統無法安裝最新版套件,至少也還能安裝之前的套件。
除錯
- 創建配置文件: 如果你還沒有 docker-compose.yml 文件,可以創建一個。這是一個示例的最小配置文件:
version: '3'
services:
nginx:
image: nginx:latest
ports:
- "8080:80"
php:
image: php:7.4-fpm
- 執行命令: 確保在包含 docker-compose.yml 文件的目錄中運行 docker-compose 命令。如果 docker-compose.yml 文件在 Laravel 項目的根目錄下,你可以這樣執行:
cd /path/to/your/laravel/project
docker-compose ps
這樣應該可以解決你遇到的 no configuration file provided: not found 問題,並且顯示 Docker Compose 中定義的服務的狀態。
- 指定檔案路徑
在使用 docker-compose 命令時,使用 -f 選項明確指定 docker-compose.yml 的路徑。例如:
docker-compose -f /path/to/your/docker-compose.yml logs
清除空間
- 删除所有已停止的容器:
docker container prune
- 清理无用的 Docker 镜像:
列出所有镜像:
docker images -a
删除所有无用的镜像(包括悬挂镜像、未被任何容器使用的镜像等):
docker images prune -a
- 清理无用的 Docker 数据卷:
列出所有数据卷:
docker volume ls
删除未被任何容器使用的数据卷:
docker volume prune
Mountpoint 字段是否为空,如果为空,则表示该数据卷当前未被任何容器挂载,可以考虑删除。
如果确认某个数据卷未被任何容器使用,可以使用以下命令删除它:
docker volume rm <volume_name>