使用Docker-compose部署mysql的简单步骤

 更新时间:2023年04月14日 15:35:18   作者:王stone  
Docker-compose是Docker官方推出的一个工具,用于定义和运行多个 Docker 容器的应用程序,下面这篇文章主要给大家介绍了关于使用Docker-compose部署mysql的简单步骤,需要的朋友可以参考下

前言

虽然docker部署环境比自己下载安装包要方便不少,但是docker的命令还有挂载目录在每次启动容器的时候都去找命令对使用者是很不友好的,而且有时候要启动多个容器的时候显然一个个的启动是很麻烦的。所以如果可以事先将"启动脚本"写好的话,之后就算虚拟机重启了,再启动容器也就是执行"启动脚本"就好了,docker-compose很好的解决了这个问题。

一、Docker-compose简介

个人理解:容器编排工具,对于大多数人来说可能最大的作用是被当成启动容器的脚本了。它可以实现一次性启动多个容器,它的自动重启容器策略也很好用。

二、部署步骤

1. 在/root 目录下新建目录docker-compose,在/root/docker-compose目录下新建mysql文件件

cd /root 
mkdir docker-compose && cd docker-compose
mkdir mysql && cd mysql

2 准备挂载文件

(如果不需要修改配置文件此步可跳过,然后docker-compose.yml文件挂载时删除配置文件的挂载)

在 /root/docker-compose/mysql 文件夹下新建config文件夹,在conf文件下新建my.cnf 文件

mkdir config && cd config
vim my.cnf

将下面的配置文件复制到 my.cnf中

[mysqld]
user=mysql
default-storage-engine=INNODB
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

3.编写docker-compose.yml文件

在/root/docker-compose/mysql文件夹下新建docker-compose.yml文件,

cd /root/docker-compose/mysql

vim docker-compose.yml

加下面内容复制到 docker-compose.yml 中

version: '3'
services:
  mysql:
    image: mysql
    restart: always
    container_name: mysql
    environment:
      MYSQL_ROOT_PASSWORD: password
      TZ: Asia/Shanghai
    ports:
      - 3306:3306
    volumes:
      - /root/docker-compose/mysql/data:/var/lib/mysql
      - /root/docker-compose/mysql/config/my.cnf:/etc/mysql/my.cnf
    command:
      --max_connections=1000
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --default-authentication-plugin=mysql_native_password
注意docker-compose.yml 第8行设置mysql root 账号登录的密码,这里的 password 修改为自己需要的密码即可。

4. 启动

docker-compose up -d

总结

即使之后宿主机重启了,只要到docker-compose.yml文件所在的位置,执行docker-compose up -d命令就可以启动容器了,事实上如果docker-compose.yml文件中配置了容器的重启策略为always,那么每次重启docker时都会重启相关的容器,即不需要执行docker-compose up -d命令也会自动重启mysql容器。

相关文章

  • Docker 配置网络使用bridge网络的方法

    Docker 配置网络使用bridge网络的方法

    本篇文章主要介绍了Docker 配置网络使用 bridge 网络的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • 解决docker磁盘空间不足问题

    解决docker磁盘空间不足问题

    这篇文章主要介绍了解决docker磁盘空间不足问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • 详解Docker下搭建Jenkins构建环境

    详解Docker下搭建Jenkins构建环境

    这篇文章主要介绍了详解Docker下搭建Jenkins构建环境,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • docker-compose之基本语法解读

    docker-compose之基本语法解读

    这篇文章主要介绍了docker-compose之基本语法解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • docker 安装solr8.6.2 配置中文分词器的方法

    docker 安装solr8.6.2 配置中文分词器的方法

    这篇文章主要介绍了docker 安装solr8.6.2 配置中文分词器的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • mac通过docker一键部署Nexus3的过程记录

    mac通过docker一键部署Nexus3的过程记录

    编写一些简易的 shell 脚本帮我们快速的搭建服务器,猿们只要按着套路“一步一步”的操作,基本上都可以快速部署服务,这篇文章主要介绍了mac通过docker一键部署Nexus3及安装步骤,需要的朋友可以参考下
    2022-10-10
  • Docker如何访问到宿主机MYSQL的实现方法

    Docker如何访问到宿主机MYSQL的实现方法

    使用 Docker 能实现服务的容器化,并使用容器间网络在它们之间进行通信,本文主要介绍了Docker如何访问到宿主机MYSQL的实现方法,感兴趣的可以了解一下,感兴趣的可以了解一下
    2023-09-09
  • docker安装influxdb的详细教程(性能测试)

    docker安装influxdb的详细教程(性能测试)

    这篇文章主要介绍了docker安装influxdb的详细教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • 8个你可能不知道的Docker知识

    8个你可能不知道的Docker知识

    这篇文章主要为大家详细介绍了8个你可能不知道的Docker知识,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 在Docker中安装OnlyOffice的详细过程记录

    在Docker中安装OnlyOffice的详细过程记录

    OnlyOffice是一款免费且开源的Office协作办公套件,支持桌面端和移动端等多平台,下面这篇文章主要给大家介绍了关于如何在Docker中安装OnlyOffice的详细过程记录,需要的朋友可以参考下
    2024-01-01

最新评论