sail 安装扩展

遇到了安装扩展的需求,看到了这个帖子,研究了一下,成了,记录一下。
问答:Laravel Sail 如何安装 PHP 扩展,连接 sqlserver
这个提问给出了答案,下面我来实操一下。

sail 安装扩展

思路

sail是基于docker的,所以修改sail启动时的dockerfile文件,将安装依赖的命令加入到dockerfile文件中,然后再重新build一下镜像,再启动就👌了。

开始干

我的项目要用到图片处理,所以我要安装的扩展是imagick

sail artisan sail:publish

在项目目录下使用这个命令将dockerfile暴露在项目下,执行完这个命令之后,在项目下会多出一个docker文件夹,再进入对应php版本的目录,打开对应的dockerfile文件。

sail 安装扩展
可以看到安装依赖是使用的apt-get安装的,所以我们要解决的问题是知道imagick扩展对应需要安装的包名字,然后在这个文件中加上一行扩展的名字就👌了。

获取扩展的名字

docker ps

查看sail的容器id

sail 安装扩展

strat-container这个名字的容器是sail的容器,复制CONTAINER ID,

docker exec -it 45f33ad4539d /bin/bash;

这样就进入到sail的容器里面了,在容器里面执行

apt-get update
apt-cache search php8.1-

就可以列出所有可用的包

sail 安装扩展

这里!!
复制这个名字,然后我们打开项目下的dockerfile文件,加上安装此扩展的命令

sail 安装扩展

重新build一下容器

sail build --no-cache

执行下面的命令重启容器

sail down
sail up -d

就搞定了
执行sail php -m 可以看到已经安装成功了。

sail 安装扩展

本作品采用《CC 协议》,转载必须注明作者和本文链接
只不过是一粒尘埃罢了
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 2

国内的云服务商都容易超时,用不了,都是自己写的Dockerfile

1年前 评论
Aoyamakiri 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!