慕容的工作随笔

慕容的工作随笔

记录学习和工作

【转载】基于 LaraDock 在 Docker 中快速构建 Laravel 应用系列教程 —— 工具软件使用

转自:https://laravelacademy.org/post/6582.html

https://learnku.com/laravel/t/61985

1、Artisan命令

首先进入Workspace容器
docker-compose exec workspace bash
然后在Laravel项目目录下运行Artisan命令即可:
php artisan list
当然,也可以运行其他PHP命令,如:
composer update
phpunit

2、PHP相关

安装PHP扩展

安装PHP扩展之前,需要区分PHP-FPM和PHP-CLI,两者对应的扩展应该安装到不同的容器:
  • PHP-FPM扩展需要安装到php-fpm/Dockerfile-XX(XX代表PHP版本号);
  • PHP-CLI扩展需要安装到workspace/Dockerfile

修改PHP-FPM版本

默认运行PHP-FPM 7.0版本,如果要切换到5.6版本,操作步骤如下:
  • 打开docker-compose.yml
  • 找到php-fpm所在位置,使用Dockerfile-56替换Dockerfile-70:
    php-fpm:
    build:
    context: ./php-fpm
    dockerfile: Dockerfile-70
  • 最后重建PHP容器:docker-compose build php
注:更多PHP基础镜像,请访问PHP Docker官方镜像。

修改PHP-CLI版本

默认运行的PHP-CLI是7.0版本,PHP-CLI只用于服务Artisan或Composer命令,不服务于应用代码,这是PHP-FPM的工作,所以PHP-CLI的版本号基本上无关痛痒。PHP-CLI安装在Workspace容器,改变PHP-CLI版本需要编辑workspace/Dockerfile。

安装XDebug

首先需要在Workspace和PHP-FPM容器中安装XDebug:

1)打开docker-compose.yml文件;

2)在Workspace容器中找到INSTALL_XDEBUG选项,改为true;

3)在PHP-FPM容器中找到INSTALL_XDEBUG选项,改为true;

workspace:
    build:
        context: ./workspace
        args:
            - INSTALL_XDEBUG=true
php-fpm:
    build:
        context: ./php-fpm
        args:
            - INSTALL_XDEBUG=true

然后重建这两个容器:
docker-compose build workspace php-fpm

3、使用自定义域名

假设你的自定义域名是laravel.dev,设置步骤如下:

1)打开etc/hosts,添加以下映射内容:

127.0.0.1    laravel.dev
并在nginx中配置域名:
server_name laravel.dev;
2)打开浏览器访问http://laravel.dev

4、全局安装Composer

1)打开docker-compose.yml文件

2)在Workspace容器中找到COMPOSER_GLOBAL_INSTALL选项并设置为true;

workspace:
    build:
        context: ./workspace
        args:
            - COMPOSER_GLOBAL_INSTALL=true
3)现在添加你的依赖关系到workspace/composer.json

4)最后重建容器docker-compose build workspace

5、使用Redis

首先需要启动Redis容器:
docker-compose up -d redis
然后,打开Laravel项目下的.env文件修改REDIS_HOST:
REDIS_HOST=redis
如果.env中没有REDIS_HOST变量,则需要修改config/database.php中的redis默认主机配置:
'redis' => [
    'cluster' => false,
    'default' => [
        'host'     => 'redis',
        'port'     => 6379,
        'database' => 0,
    ],
],
启用Redis缓存或设置Session驱动为Redis:
CACHE_DRIVER=redis
SESSION_DRIVER=redis
通过Composer安装predis/predis依赖:
composer require predis/predis:^1.0
你可以用以下代码在Laravel中手动测试:
Cache::store('redis')->put(’site_name', ‘Laravel学院', 10);
其它软件使用以此类推。

6、安装Node+NPM

1)打开docker-compose.yml文件;

2)在Workspace容器中找到INSTALL_NODE选项设置为true;

workspace:
        build:
            context: ./workspace
            args:
                - INSTALL_NODE=true
3)最后重建容器:docker-compose build workspace

评论 (0)

还没有评论,来做第一个吧。

发表评论

提交后需管理员审核通过后显示