【发布时间】:2017-04-25 20:46:11
【问题描述】:
我正在使用 Docker Compose 构建我的第一台 Docker 机器。我希望将 Docker 设置为具有 PHP-FPM 7、Nginx 和 MySQL(使用 MariaDB)。
这是我的 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 正确启动,但是当我尝试使用 mysql_connect 连接到 index.php 中的数据库时,出现错误:
致命错误:未捕获错误:调用 /usr/share/nginx/html/index.php:7 中未定义的函数 mysql_connect() 堆栈跟踪:在 /usr/share/nginx/html/ 中抛出 #0 {main}第 7 行的 index.php
这是我的 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>";
?>
如何设置 PHP-FPM 以使用 MySQL?
非常感谢
【问题讨论】:
标签: php mysql nginx docker docker-compose