Docker部署:MySQL

1 新建compose.yml

version: '3'
services:
  mysql:
    image: mysql:5.7
    container_name: mysql-5.7
    privileged: true
    restart: always
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: 123456
      MYSQL_USER: root
      MYSQL_PASS: 123456
      TZ: Asia/Shanghai
    command:
      --wait_timeout=28800
      --interactive_timeout=28800
      --max_connections=1000
      --default-authentication-plugin=mysql_native_password
    volumes:
      - "/home/xindaqi/mysql-5.7/data:/var/lib/mysql"
      - "/home/xindaqi/mysql-5.7/config/my.cnf:/etc/mysql/my.cnf"

2 参数解析

序号 参数 描述
1 image MySQL对应版本的镜像
2 container_name 容器名称
3 privileged 授权
4 restart 重启MySQL容器,always,启动失败时一直尝试重启
5 ports MySQL运行端口,格式:host-port:docker-port
6 environment MySQL环境,包括用户名和密码
7 command 连接超时配置及授权配置
8 volumes Docker容器中的MySQL数据挂载到宿主机路径,格式:host-path:docker-path
9 /var/lib/mysql 数据库文件路径
10 /etc/mysql/my.cnf 数据库配置文件路径

3 启停

  • 前台启动
docker-compose -f compose.yml up 
  • 守护进程启动
docker-compose -f compose.yml up -d
  • 停止
docker-compse -f compose.yml stop
  • 停止并删除容器
docker-compose -f compose.yml down

4 小结

  • 必须将容器的数据库挂载到宿主机目录,添加volumes配置
  • 停止当前容器时,选择stop仅停止,选择down会删除当前镜像

你可能感兴趣的:(#,Docker,Docker,MySQL)