php - 使用Docker通过终端运行PHPUnit

标签 php docker phpstorm

我想要的是

我有项目,没有docker / docker-compose。
我想运行PHP脚本-通过终端运行PHPUnit。最好与PhpStorm合作。

是)我有的

文件docker-phpez

#!/usr/bin/env bash
# echo "Current working directory: '"$(pwd)"'"
docker run --rm -v $(pwd):/var/www -e SYMFONY_ENV=dev ezsystems/php:7.1-v1 php $@

结果

检查版本

运行此docker-phpez -v,给我:
PHP 7.1.6 (cli) (built: Jun 12 2017 21:35:13) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.1.6, Copyright (c) 1999-2017, by Zend Technologies
    with blackfire v1.17.1~linux-x64-non_zts71, https://blackfire.io, by SensioLabs

那么这是正确的。

检查安装

然后,当我运行列表(修改文件)时,我会看到所有需要的文件。

运行PHPUnit

当我尝试运行时,它在主文件夹中看到配置文件,但在路径中看不到引导文件:
PHP Warning:  include(/var/www/src/Tests/../../vendor/ezsystems/ezpublish-kernel/config.php): failed to open stream: No such file or directory in /var/www/src/Tests/bootstrap.php on line 3

题:
  • 当我在ls /var/www/src/Tests中运行此文件时,为什么容器内的PHP无法看到此文件?

  • 更新v1:

    运行密码
    docker run --rm -v $(pwd):/var/www -e SYMFONY_ENV=dev ezsystems/php:7.1-v1 pwd
    

    给:
    /var/www
    

    运行ls
    docker run --rm -v $(pwd):/var/www -e SYMFONY_ENV=dev ezsystems/php:7.1-v1 ls
    

    提供当前文件夹中所有文件/文件夹的列表。

    Composer
    docker run --rm -v $(pwd):/var/www -e SYMFONY_ENV=dev ezsystems/php:7.1-v1 composer install
    

    正确运行并安装所有数据。

    所有命令都在项目的MAIN文件夹中运行

    最佳答案

    这个:

    /var/www/src/Tests/../../vendor/ezsystems/ezpublish-kernel/config.php
    

    转换为:
    /var/www/vendor/ezsystems/ezpublish-kernel/config.php
    

    由于../..
    您不在那儿。

    关于php - 使用Docker通过终端运行PHPUnit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44823973/

    相关文章:

    javascript - 使用 JavaScript 和 PHP 发送电子邮件

    docker - 将Docker日志输出输出到Mac和Linux上的文件中

    php - 使用php直接打印到网络打印机

    php - 通过 sFTP 在远程开发服务器上处理 PHP 项目

    docker - VueJS Nginx 和 docker 设置 - 本地 ERR_EMPTY_RESPONSE

    php - 当我尝试从 PhpStorm 运行 PHPUnit 时出错

    php - 直接在 PhpStorm 中运行 PHP 脚本

    database - 在 PhpStorm 中创建新数据库

    php - Codeigniter - 创建 RESTful API

    docker - 如何请求由Go运行在Cloud Run上的gRPC服务器