I created a mysql docker image as:
docker run \
--name mysql \
-v /Users/pivdet/Downloads/backup/docker_mysql/conf.d:/etc/mysql/conf.d \
-v /Users/pivdet/Downloads/backup/docker_mysql/initdb.d:/docker-entrypoint-initdb.d \
-v /Users/pivdet/Downloads/backup/docker_mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=piv123 \
-p 3306:3306 \
-d mysql
And started the server by docker start mysql
I could connect to the server in terminal: $ mysql -h127.0.0.1 -P3306 -uroot -ppiv123
But when I tried to connect it by using peewee:
import peewee
mysql_db = peewee.MySQLDatabase("websdl", host="127.0.0.1", port=3306, user="root", passwd="piv123")
if __name__ == "__main__":
mysql_db.connect()
There's an error:
Traceback (most recent call last):
File "models.py", line 6, in <module>
mysql_db.connect()
...
peewee.OperationalError: (1045, u"Access denied for user 'root'@'172.17.0.1' (using password: NO)")
The user information of my db would be:
mysql> select Host, User from user;
+-----------+------------------+
| Host | User |
+-----------+------------------+
| % | root |
| localhost | mysql.infoschema |
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
+-----------+------------------+
5 rows in set (0.01 sec)