Я начинаю работать с Docker, и я пытаюсь запустить простое приложение PHP с базой данных MySQL.Я установил драйвер для mysql в файле Docker, и я вижу с php-информацией внутри контейнера, но, когда вы пытаетесь подключиться к базе данных de из моего php-класса, я получаю типичную ошибку massege «Вызов неопределенной функции mysql_open () в /код / открытый / index.php: 5" .Я пытаюсь соединиться с PDO (также установленным и видимым с phpinfo), и получаю похожую ошибку (не найден PDO).
здесь мой код
index.php
<?php
#phpinfo();
echo "Hola hi";
$link = mysql_open("mysql", "root", "frida", "");
if (!$link) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
echo "Success: A proper connection to MySQL was made!" . PHP_EOL;
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL;
mysqli_close($link);
docker-compose.yml
version: '3'
services:
web:
build:
context: .
dockerfile: docker/nginx/Dockerfile
networks:
- red
ports:
- "8081:80"
volumes:
- .:/code/
links:
- php
php:
build:
context: .
dockerfile: docker/php/Dockerfile
networks:
- red
volumes:
- .:/code/
mysql:
#image: mysql:8.0
build:
context: .
dockerfile: docker/mysql/Dockerfile
# command: --default-authentication-plugin=mysql_native_password
networks:
- red
ports:
- "8083:3306"
restart: always
environment:
- MYSQL_ROOT_PASSWORD=frida
volumes:
- .:/code/
phpmyadmin:
depends_on:
- mysql
image: phpmyadmin/phpmyadmin
networks:
- red
ports:
- "8082:80"
restart: always
environment:
- MYSQL_USERNAME=root
- PMA_HOST=mysql
- MYSQL_ROOT_PASSWORD=frida
networks:
red:
Dofkerfile для php
FROM php:7.1-fpm-alpine
RUN docker-php-ext-install mysqli && docker-php-ext-enable mysqli
# Copy the php config file
COPY ./docker/php/php-fpm.conf /etc/php/7.1/fpm/pool.d/www.conf
# Copy the application code
COPY . /code
VOLUME ["/code"]
dockerfile для nginx
FROM nginx:1.11-alpine
# Copy the nginx config file
COPY ./docker/nginx/nginx.conf /etc/nginx/conf.d/default.conf
Я много искал, но вся информация, которую я могу найти, исправляет ошибку при настройке драйвера (и я уже настроил)