all*_*nth 2 php docker dockerfile
我不明白为什么 Sail 安装 PHP 8.1 而不是 8.0。它暂时破坏了我的应用程序。
这是 docker-compose.yml:
# For more information: https://laravel.com/docs/sail
version: '3'
services:
laravel.test:
build:
context: ./docker/8.0
dockerfile: Dockerfile
args:
WWWGROUP: '${WWWGROUP}'
image: sail-8.0/app
extra_hosts:
- 'host.docker.internal:host-gateway'
ports:
- '${APP_PORT:-80}:80'
environment:
WWWUSER: '${WWWUSER}'
LARAVEL_SAIL: 1
XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}'
XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}'
volumes:
- '.:/var/www/html'
networks:
- sail
depends_on:
- mysql
- redis
...
Run Code Online (Sandbox Code Playgroud)
这是 Docker 文件:https://github.com/laravel/sail/blob/1.x/runtimes/8.0/Dockerfile
我已经重建了很多次图像,但我仍然得到这个:
sail@c5f380167b79:/var/www/html$ php -v
PHP 8.1.2 (cli) (built: Jan 24 2022 10:42:51) (NTS)
Run Code Online (Sandbox Code Playgroud)
小智 6
请检查[文档][1],其中说明了如何设置正确的 php 版本,以及如何重建 sail 容器:
Sail 目前支持通过 PHP 8.1、PHP 8.0 或 PHP 7.4 为您的应用程序提供服务。目前 Sail 使用的默认 PHP 版本是 PHP 8.1。要更改用于为您的应用程序提供服务的 PHP 版本,您应该更新应用程序的 docker-compose.yml 文件中 laravel.test 容器的构建定义:
上下文:./vendor/laravel/sail/runtimes/8.1
上下文:./vendor/laravel/sail/runtimes/8.0
上下文:./vendor/laravel/sail/runtimes/7.4
此外,您可能希望更新图像名称以反映应用程序所使用的 PHP 版本。此选项也在应用程序的 docker-compose.yml 文件中定义:
图片:sail-8.1/app
更新应用程序的 docker-compose.yml 文件后,您应该重建容器映像:
航行构建--无缓存
扬帆起航
[1]:https://laravel.com/docs/9.x/sail#sail-php-versions它有助于添加这一行: RUN update-alternatives --set php /usr/bin/php8.0
https://github.com/laravel/sail/commit/dbe4a908d254d91f99ed89047c9eec4bae8973b0
| 归档时间: |
|
| 查看次数: |
2193 次 |
| 最近记录: |