запустить контейнер mysql
$ docker run --name mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql
Подключитесь к MySQL и вручную создайте новую базу данных
$ docker run -it --link mysql:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
связать базу данных и запустить php-контейнер
$ docker run -d --link mysql:mysql --name myapp -v "$PWD":/var/www/html -p 80:80 php:5.6-apache
Первый вопрос:
При доступе к моему веб-сайту php: http://localhost/index.php я получил следующую ошибку:
Fatal Error: Mysql is not supported in your PHP, recompile and try again.
Вот команда настройки, показанная на странице phpinfo, похоже, модуль mysql был включен в компиляцию.
Настроить команду './configure' '--with-config-file-path=/usr/local/etc/php' ' --with-config-file-scan-dir=/usr/local/etc/php/conf .d' '--with-apxs2' '--disable-cgi' '--enable-mysqlnd' '--with-curl' '--with-openssl' '--with-readline' '--with- перекодировать '' --with-zlib'
Что-то пропущено в официальном изображении php?
второй вопрос:
При доступе к http://localhost/info.php я вижу страницу phpinfo.
Но он также показывает пароль базы данных в сеансе «Среда»:
MYSQL_ENV_MYSQL_ROOT_PASSWORD my-secret-pw
и в сеансе "Переменные PHP"
_ENV["MYSQL_ENV_MYSQL_ROOT_PASSWORD"] my-secret-pw
Итак, как скрыть пароль в phpinfo()?