Estoy usando Docker Compose para construir mi primera máquina Docker. Quiero configurar Docker para que tenga PHP-FPM 7, Nginx y MySQL (usando MariaDB).

Aquí está mi docker-compose.yml

version: '2'
services:
nginx:
image: nginx:latest
ports:
  - "80:80"
volumes:
  - ./nginx/site.conf:/etc/nginx/conf.d/default.conf
  - ./logs/nginx-error.log:/var/log/nginx/error.log
  - ./logs/nginx-access.log:/var/log/nginx/access.log
  - ./public:/usr/share/nginx/html
links:
  - phpfpm

phpfpm:
image: php:7-fpm
volumes:
  - ./public:/usr/share/nginx/html
  - ./logs/log.conf:/usr/local/etc/php-fpm.d/zz-log.conf

mariadb:
image: mariadb
environment:
  MYSQL_ROOT_PASSWORD: admin
  MYSQL_DATABASE: admin
  MYSQL_USER: admin
  MYSQL_PASSWORD: admin
volumes:
 - ./database:/var/lib/mysql

Docker se inicia correctamente, pero cuando intento usar mysql_connect para conectarme a la base de datos en index.php, aparece el error:

Error fatal: Error no detectado: llamada a la función no definida mysql_connect () en /usr/share/nginx/html/index.php:7 Seguimiento de pila: # 0 {main} arrojado en /usr/share/nginx/html/index.php en la línea 7

Aquí está mi index.php

<?php
 $username = "admin";
 $password = "admin";
 $hostname = "localhost";

 //connection to the database
 $dbhandle = mysql_connect($hostname, $username, $password)
   or die("Unable to connect to MySQL");
 echo "Connected to MySQL<br>";
 ?>

¿Cómo puedo configurar PHP-FPM para usar MySQL?

Muchas gracias

-2
James Johnson 10 dic. 2016 a las 16:43
En php7 se elimina la extensión mysql. Sobre.
 – 
u_mulder
10 dic. 2016 a las 16:47
Debe utilizar MySQLi
 – 
bhazero025
10 dic. 2016 a las 16:47
How can I set up PHP-FPM to use MySQL? Utilice una extensión adecuada, como MySQLi o PDO. Consulte esto.
 – 
Charlotte Dunois
10 dic. 2016 a las 17:05

1 respuesta

La mejor respuesta