I am trying to run the console console of the Doctrine 2 script through PhpStorm. Docker is configured as a Deploy server.
If I run this:
$ docker exec container_name /var/www/vendor/bin/doctrine-module orm:schema-tool:create
he prints:
There are no metadata classes to process.
But when I run PHP Run / Debug configuration in PhpStorm: File: / home / username / PhpstormProjects / proj / vendor / bin / doctrine-module
he prints:
docker: // image_name / container_name / var / www / vendor / bin / doctrine-module
Fatal error: Uncaught PDOException: PDO :: __ construct (): php_network_getaddresses: getaddrinfo failed: name or service not known in / var / www / vendor / zendframework / zend -servicemanager / src / ServiceManager.php on line 765
Zend\ServiceManager\Exception\ServiceNotCreatedException: "doctrine.connection.orm_default". : : SQLSTATE [HY000] [2002] php_network_getaddresses: getaddrinfo : /var/www/vendor/zendframework/zend -servicemanager/src/ServiceManager.php 765
: 0.0001 349368 1. {main}()/var/www/vendor/doctrine/doctrine-module/bin/doctrine-module: 0 0.0268 360480 2. include ('/var/www/vendor/doctrine/doctrine-module/bin/doctrine-module.php')/var/www/vendor/doctrine/doctrine-module/bin/doctrine-module: 4 0.9376 4076096 3. Zend\ServiceManager\ServiceManager- > get()/var/www/vendor/doctrine/doctrine-module/bin/doctrine-module.php:61 0.9376 4076096 4. Zend\ServiceManager\ServiceManager- > doCreate()/var/www/vendor/zendframework/zend-servicemanager/src/ServiceManager.php:200
255
, PDO
new PDO("mysql:host=db;port=3306;dbname=dbname", "user", "pass", [])
-compose.yml:
version: '2'
services:
nginx:
container_name: nginx
build:
context: .
dockerfile: DockerfileNginx
ports:
- "80:80"
depends_on:
- php
working_dir: /var/www
links:
- php
volumes:
- .:/var/www
links:
- db
php:
container_name: php
build:
context: .
dockerfile: DockerfilePhp
- db
volumes:
- .:/var/www
expose:
- "9000"
depends_on:
- db
db:
container_name: db
image: "mysql:5.6"
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: pass
MYSQL_DATABASE: dbname
MYSQL_USER: user
MYSQL_PASSWORD: pass