在mysql docker hub page中,有关如何使用以下内容创建用户的参考:
MYSQL_USER, MYSQL_PASSWORD
但是如何在docker-compose.yml文件中指定这些参数?
到目前为止,我有:
mysql:
image: mysql:5.7
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: R00t+
另一个问题;如何从容器外部连接到mysql主机?在容器内部,我可以使用:
连接$user = 'root';
$pass = 'R00t+';
$server = 'mysql';
$dbh = new PDO( "mysql:host=$server", $user, $pass );
答案 0 :(得分:2)
关于密码,您设置的所有参数与设置root密码完全相同,即:
mysql:
image: mysql:5.7
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: R00t+
MYSQL_USER: youruser
MYSQL_PASSWORD: yourpassword
要在主机使用localhost
之前连接mysql外部容器,因为您将端口从容器重定向到此行中的主机- "3306:3306"
$user = 'root';
$pass = 'R00t+';
$server = 'localhost';
$dbh = new PDO( "mysql:host=$server", $user, $pass );
我假设你在你的笔记本电脑上运行它,你已经启动了docker容器。