码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • docker-compose部署mysql


    docker-compose部署mysql

    docker-compose


    文章目录

    • docker-compose部署mysql
    • 前言
    • 一、docker-compose简介
    • 二、部署步骤
      • 1. 在/root 目录下新建目录docker-compose,在/root/docker-compose目录下新建mysql文件件
      • 2 准备挂载文件
      • 3.编写docker-compose.yml文件
      • 4. 启动
    • 总结

    前言

    虽然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
    
    • 1
    • 2
    • 3

    2 准备挂载文件

    (如果不需要修改配置文件此步可跳过,然后docker-compose.yml文件挂载时删除配置文件的挂载)
    在 /root/docker-compose/mysql 文件夹下新建config文件夹,在conf文件下新建my.cnf 文件

    mkdir config && cd config
    vim my.cnf
    
    • 1
    • 2

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

    [mysqld]
    user=mysql
    default-storage-engine=INNODB
    character-set-server=utf8
    [client]
    default-character-set=utf8
    [mysql]
    default-character-set=utf8
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    3.编写docker-compose.yml文件

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

    cd /root/docker-compose/mysql
    vim docker-compose.yml
    
    • 1
    • 2

    加下面内容复制到 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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    4. 启动

    docker-compose up -d

    总结

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

  • 相关阅读:
    python将dataframe按需绘制折线图、柱状图、双坐标图
    python读写查询mysql数据库
    【我的百度实习总结】百度网盘——一刻相册实习
    RocketMq快速入门(详解)
    Codeforces Round #684 (Div. 1)
    如何利用Git中的tag管理项目版本号
    3.1.1手写线程池与性能分析
    ARM 反汇编工具objdump的使用简介
    ES6 新特性重点部分
    “熊猫杯” | 赛宁网安获网络安全优秀创新成果大赛优胜奖
  • 原文地址:https://blog.csdn.net/m0_67392811/article/details/126327305
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号