我构建了一个创建nginx,php,mysql和phpmyadmin的组合文件。
一切都在起作用。PhpMyAdmin可以与MySQL容器交谈。nginx可以与PHP容器交谈。
但似乎Nginx或PHP无法与MySQL交谈。执行
之类的东西mysql_connect('localhost','florian','pw')
它给了:
未定的错误:致电未定义的函数mysql_connect()
这是我的docker-compose.yml
php:
build: php-docker/.
container_name: php
ports:
- "9000:9000"
volumes:
- /var/www/:/var/www/
nginx:
build: nginx-docker/.
container_name: nginx
links:
- php
ports:
- "80:80"
mysql:
build: mysql-docker/.
container_name: mysql
volumes:
- /var/mysql:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: pw
MYSQL_USER: florian
MYSQL_PASSWORD: pw
MYSQL_DATABASE: db
phpmyadmin:
build: phpmyadmin/.
links:
- mysql:db
ports:
- 1234:80
container_name: phpmyadmin
environment:
PMA_ARBITRARY: 1
PMA_USERNAME: florian
PMA_PASSWORD: pw
MYSQL_ROOT_PASSWORD: pw
restart: always
mysql_connect
功能从php 7.0删除。
您必须将代码迁移到MySQLI扩展名,该扩展名提供了类似的功能mysqli_connect
或迁移到PDO。
参考(查看红色警告):http://php.net/manual/en/function.mysql-connect.php