docker pull docker.io/mysql #mysql版本为8.0,默认最新
docker search mysql:5.7
docker pull docker.io/centos/mysql-57-centos7
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d docker.io/centos/mysql-57-centos7
或,以下为将数据挂载到宿主机
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /home/mysql:/var/lib/mysql -v /home/mysql/my.cnf:/etc/mysql/my.cnf -d docker.io/centos/mysql-57-centos7
my.cnf配置如下
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
tmp_table_size=200M
#skip_name_resolve=1
character-set-server=utf8
init-connect=‘SET NAMES utf8’
port=3306
log-error=/var/lib/mysql/mysqld.log
pid-file=/var/lib/mysql/mysqld.pid
datadir=/var/lib/mysql/data #不能有data文件夹,mysql会自己创建
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
explicit_defaults_for_timestamp=true
max_connections=2000
event_scheduler=1
key_buffer_size=256M
sql_mode=‘NO_ENGINE_SUBSTITUTION’
innodb_log_buffer_size=8M
#bind-address=127.0.0.1
lower_case_table_names=1 #忽略大小写
#default-storage-engine=MyISAM
#log-bin=jlrc-binarylog
#log-bin-index=jlrc-binarylog.index
server-id=1
#binlog-do-db=test
#binlog-do-db=test
log-bin-trust-function-creators=1
slow_query_log=1
slow_query_log_file=/var/lib/mysql/slowquery.log
long_query_time=3
#log_queries_not_using_indexes
#log_long_format
#log-warnings=1
#[mysqladmin]
#user=zabbix
#password=zabbix
可以进入mysql命令交互
docker exec -it mysql bash
推送到自己的镜像仓库
docker images
docker tag docker.io/centos/mysql-57-centos7 i6725545/mysql:5.7.24
docker login 【登录,如登录过此步可忽略】
docker push i6725545/mysql:5.7.24