在之前项目用到mysql5.6,在docker-compose编排后,插入数据乱码,解决办法是加入运行参数--character-set-server=utf8,简单运行的docker如下:
mysql:
image: mysql:5.6
container_name: mail-mysql
volumes:
- /opt/docker/mysql/data:/var/lib/mysql
ports:
- "3307:3306"
restart: always
environment:
- MYSQL_DATABASE=gophish
- MYSQL_ROOT_PASSWORD=password
command: --character-set-server=utf8
这里有个重要注意点,在第一次运行镜像后,挂载宿主机文件配置已经完成,在修改mysql运行配置时,需要先删除宿主机挂载文件,在运行,不然不生效。