1、構建Dockerfile ,路徑 /root/mysql
1 FROM hub.c.163.com/library/mysql:5.7 2 #作者信息 3 MAINTAINER lsj 4 #修改編碼方式 5 RUN echo "character-set-server=utf8" >> /etc/mysql/mysql.conf.d/mysqld.cnf 6 RUN service mysql restart 7 EXPOSE 3306
2、到Dockerfile所在文件夾,執行
1 [root@localhost mysql]# docker build -t mysql:5.7 .
3、啟動容器
1 [root@localhost mysql]# docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql
--name為mysql的實例設置別名。 -p 3307為對外暴露的端口,3306是內部端口 -e MYSQL ROOT_PASSWORD 設置mysql登錄密碼 -d 以守護進程運行(后台運行)最后的mysql是鏡像名稱
4、查看容器
5、進入容器
6、修改MySQL
1 查看 user 表中的信息。 2 select host,user,plugin,authentication_string from mysql.user; 3 4 host 列中的 % 表示不限制 IP 。 5 localhost 表示的是本機使用。 6 plugin 非 mysql_native_password 則需要修改密碼。 7 8 SQL 語句: 9 alter user 'root'@'% 'IDENTIFIED WITH mysql_native_password BY '123456'; 10 最后刷新生效:flush privileges;