janole / laravel-dockerize
一个用于容器化您的Laravel应用的简单工具
1.3.5
2024-08-27 14:23 UTC
Requires
- php: ^7.4|^8.0|^8.1|^8.2|8.3
- ext-json: *
- laravel/framework: ^5.5|^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- vlucas/phpdotenv: ^2|^3|^4|^5
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.59
- dev-master
- dev-main
- 1.3.5
- 1.3.4
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.x-dev
- 1.2.14
- 1.2.13
- 1.2.12
- 1.2.11
- 1.2.10
- 1.2.9.2
- 1.2.9
- 1.2.8
- 1.2.7
- 1.2.6
- 1.2.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.1-BETA
- 1.1.0-BETA
- 1.0.x-dev
- 1.0.10
- 1.0.8
- 1.0.7
- 1.0.6-BETA
- 1.0.5
- 1.0.4-BETA2
- 1.0.4-BETA
- 1.0.3
- 1.0.2
- 1.0.1
- 0.x-dev
- 0.3.31
- 0.3.30
- 0.2.22
- 0.2.21
- 0.2.20
- 0.1.19
- 0.1.18
- 0.1.17
- 0.1.16
- 0.1.15
- 0.1.14
- 0.1.13
- 0.1.12
- 0.1.11
- 0.1.10
- 0.1.9
- 0.1.8
- 0.1.7
- 0.1.6
- 0.1.5
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
- dev-add-container-build-script
- dev-beta
- dev-dev
- dev-services-for-testing
- dev-laravel-7-compatibility
This package is auto-updated.
Last update: 2024-09-27 14:32:14 UTC
README
一个用于容器化您的Laravel应用的简单工具 ...
什么?为什么?
您是否想轻松地将您的Laravel应用创建为Docker镜像?那么这个项目希望成为您的朋友 ;-)
!! 注意 !! 目前,该项目对一些基本依赖项(例如PostgreSQL)有严重限制。
安装
$ composer require janole/laravel-dockerize
使用方法
1. 首先,您需要指定Docker镜像的名称。将以下变量添加到您的.env
文件中
DOCKERIZE_IMAGE="my-shiny-new-app"
或者
DOCKERIZE_IMAGE="my-own.docker-registry.com/my-shiny-new-app"
如果您正在使用git,
laravel-dockerize
将尝试自动添加一些版本和分支标签到镜像名称。
2. 现在构建镜像
$ php artisan docker:build cd /Users/ole/projects/Laravel/test-app && docker build -t my-shiny-new-app:0.1-master . ... * Successfully tagged my-shiny-new-app:0.1-master
太好了!现在您已经有了名为my-shiny-new-app:0.1-master
的第一个镜像
!! 注意 !! 用于创建镜像的Dockerfile将自动保存在您的项目根目录中。
3. 在项目根目录中创建一个docker-compose.yml文件
$ php artisan docker:compose -s File saved as /Users/ole/projects/Laravel/test-app/docker-compose.yml
4. 通过docker-compose运行项目
$ docker-compose up [-d] Creating network "test-app_default" with the default driver Creating volume "test-app_postgres-data" with default driver Creating test-app_database_1 ... done Creating test-app_app_1 ... done
内部结构 ...
- laravel-dockerize将为您的项目添加另一个artisan命令:
container:startup
。此命令将在容器(重新)启动时自动调用,并尝试为您初始化数据库。为此,它将等待数据库就绪,然后调用php artisan migrate --force
,然后尝试运行初始填充器DOCKERIZE_SEED1
或更新填充器DOCKERIZE_SEED2
(如果数据库不是最新的。)