Я новичок в докере.Я могу войти в мой MySQL контейнер и получить доступ к базе данных.Но я не могу получить к нему доступ из своего контейнера PHP, а также при попытке подключения из клиента mysql (sequelPro).
PHP DockerFile
FROM php:7.0-apache
RUN apt-get update && \
apt-get install -y libfreetype6-dev libjpeg62-turbo-dev && \
docker-php-ext-install mysqli && \
docker-php-ext-install mbstring && \
docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --
with-jpeg-dir=/usr/include/ && \
docker-php-ext-install gd
COPY ./php.ini /usr/local/etc/php/
RUN a2enmod rewrite
RUN service apache2 restart
docker-compose.yml
version: '2'
services:
mysql:
image: mysql:5.7
ports:
- "4407:3306"
volumes:
- ./db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=shutterfly
shutterfly:
build: ./shutterfly
volumes:
- ./shutterfly:/var/www/html/
depends_on:
- mysql
restart: always
links:
- mysql
ports:
- "8000:80"
CodeIgnitor дает мне эту ошибку:
Severity: Warning
Message: mysqli::real_connect(): (HY000/2002): Connection refused
Filename: mysqli/mysqli_driver.php
Line Number: 201
Backtrace:
File: /var/www/html/index.php
Line: 315
Function: require_once
Unable to connect to your database server using the provided settings.
Filename: core/CodeIgniter.php
Line Number: 518
В моем Database.php Iесть
$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
'dsn' => '',
'hostname' => "0.0.0.0",
'database_user' => 'root',
'database_password' => 'root',
'databasename' => 'shutterfly',
'port' => '4407',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => TRUE,
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
Можете ли вы дать мне знать, что мне не хватает?