我目前正在本地计算机上构建一个新的 Laravel 包。 我还有一个使用 Laravel Sail 的本地项目来测试新包。
** Laravel Sailcomposer.json **
"repositories": {
"local": {
"type": "path",
"url": "../packages/new-package"
}
}
现在,当我尝试命令
sail composer require vendor/new-package
时,我收到错误:The url supplied for the path (../packages/new-package) repository does not exist
。
我知道我的 Sail 应用程序位于 Docker 容器中,并且路径
../packages/new-package
不能存在于其中。但我该如何解决这个问题,如何在 Laravel Sail 应用程序中使用本地包?
默认情况下,使用 Sail 时,仅项目目录作为卷安装在 Sail 容器中。
您可以通过运行以下命令自定义您的 sail 撰写文件:
sail artisan sail:publish
这应该会在项目根目录中发布默认的 Sail
docker-compose.yml
文件,以便您对其进行修改。
为了允许 Composer 从本地路径存储库加载包,您可以将路径安装在容器中完全相同的相对位置。这可能如下所示:
volumes:
# Default one
- '.:/var/www/html'
# New one
- ../packages:/var/www/packages