docker mysql镜像的制作(修改配置)

mysql镜像的制作(修改配置)

  1. 得到mysql的配置文件
    docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7  ## 运行出一个MySQL容器
     
    docker cp MySQL容器ID:/etc/mysql/my.conf .   ## 拷贝mysql的配置文件my.cnf到当前目录
  2. 修改MySQL配置文件

    在上一步得到的my.cnf文件中(或者直接在当前目录创建一个my.cnf,进行编辑),增加lower_case_table_names=1, 如下:

    [mysqld]
    ##################基础设置##################
    pid-file    = /var/run/mysqld/mysqld.pid
    socket      = /var/run/mysqld/mysqld.sock
    datadir     = /var/lib/mysql
    #log-error  = /var/log/mysql/error.log
    sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    default-time-zone='+08:00'
    ​
    #数据库默认字符集
    character-set-server = utf8mb4
    ​
    #数据库字符集对应一些排序等规则,注意要和character-set-server对应
    collation-server = utf8mb4_general_ci
    ​
    #设置client连接mysql时的字符集,防止乱码
    init_connect=‘SET NAMES utf8mb4‘
    ​
    #是否对sql语句大小写敏感,1表示不敏感
    lower_case_table_names = 1

     

  3. 编写Dockerfile持久化MySQL配置文件
    FROM mysql:5.7
    COPY my.cnf /etc/mysql/
    EXPOSE 3306
    CMD ["mysqld"]
  4. 根据dockerfile编译新镜像
    docker build -t mysqlplus:5.7 --no-cache=true -f Dockerfile .
posted @ 2020-09-20 14:20  ament  阅读(711)  评论(0编辑  收藏  举报