0. 安装docker-compose,参见:【Amadeus原创】docker compose的安装

1. 目录结构:按以下目录结构mkdir文件夹和相关文件

mysql 目录下的 data 为数据目录,mysql 的数据表、二进制日志文件就在这里。.env 文件包含了一些变量,这些变量可以在 docker-compose.yml 文件中通过 ${variable_name} 来引用。

2. 创建.env 文件 (在软件当前目录)

MYSQL_ROOT_PASSWORD=root

MYSQL_ROOT_HOST=% MYSQL_DIR=./mysql

3. 创建MySQL 配置文件 my.cnf

[mysqld]

character-set-server=utf8mb4

default-time-zone='+8:00' innodb_rollback_on_timeout='ON' max_connections=500 innodb_lock_wait_timeout=500

4.创建docker-compose.yml

version: '3'

services:

mysql-db:

container_name: mysql # 指定容器的名称

image: mysql # 指定镜像和版本

ports:

- "3306:3306" environment:

MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}

MYSQL_ROOT_HOST: ${MYSQL_ROOT_HOST}

volumes:

- "${MYSQL_DIR}/data:/var/lib/mysql" # 挂载数据目录

- "${MYSQL_DIR}/config:/etc/mysql/conf.d" # 挂载配置文件目录

Environment 变量
  • MYSQL_ROOT_PASSWORD :这个不用解释,root 用户的密码。
  • MYSQL_USERMYSQL_PASSWORD :这两个变量为可选,创建一个新用户,这个用户在 MYSQL_DATABASE 变量指定的数据库上拥有超级用户权限。
  • MYSQL_DATABASE :指定一个数据库,在容器启动时创建。
  • MYSQL_ALLOW_EMPTY_PASSWORD :设置为 yes 允许 root 用户的密码为空。(不推荐)
  • MYSQL_RANDOM_ROOT_PASSWORD :设置为 yes 将在容器启动时为 root 用户生成一个随机的密码,密码会显示到标准输出流(GENERATED ROOT PASSWORD:......)。
  • MYSQL_ONETIME_PASSWORD :字面意思就是一次性密码,为 root 用户设置,第一次登录后必须修改密码(仅支持 5.6 以上的版本)。

5.运行容器

在 docker-compose.yml 目录下执行:

docker-compose up

如果要在后台运行,使用 docker-compose up -d

停止容器:

> docker-compose down

如果是前台运行的,使用:Ctrl + C 停止。这两种方式在停止后都会删除容器,下次启动必须使用 up 命令。

停止但不删除容器:

> docker-compose stop

使用 stop 停止后,再次启动使用 start 命令即可。

docker-compose安装mysql的更多相关文章

  1. 在docker中安装mysql

    #!/bin/sh # 安装docker # 在docker中安装mysql # 解决了docker容器中无法输入中文的问题 ##########################安装docker # ...

  2. CentOS双机中Docker下安装Mysql并配置互为主从模式

    CentOS双机中Docker下安装Mysql并配置互为主从模式 目录 1.搜索镜像... 1 2.拉取镜像... 1 3.绑定端口: 1 4.配置文件(修改/etc/mysql/my.cnf文件): ...

  3. 手把手教你 Docker Compose安装DOClever

    一.什么是Docker Compose以及Docker Compose的安装和使用 查看我的另外一篇博客:Docker Compose的安装和使用 二.DOClever是什么 DOClever是一个可 ...

  4. 使用 docker compose 安装 tidb

    目标 : 单机上通过 Docker Compose 快速一键部署一套 TiDB 测试集群 前提条件: 1.centos版本在7.3 以上 2.安装git 3.安装docker Docker versi ...

  5. docker和docker compose安装使用、入门进阶案例

    一.前言 现在可谓是容器化的时代,云原生的袭来,导致go的崛起,作为一名java开发,现在慌得一批.作为知识储备,小编也是一直学关于docker的东西,还有一些持续继承jenkins. 提到docke ...

  6. Docker Compose 安装 on centos7

    本文演示如何在CentOS7上安装Docker Compose. 1 在线安装 1.1 下载安装包 $ curl -L https://github.com/docker/compose/releas ...

  7. Docker Compose安装以及入门

    Docker Compose 是 Docker 官方编排(Orchestration)项目之一,负责快速在集群中部署分布式应用. Compose 简介 Compose 项目是 Docker 官方的开源 ...

  8. centos docker compose安装

    docker compose离线安装 通过联网机器下载docker-compose离线安装包(参见Downloads部分) https://github.com/docker/compose/rele ...

  9. docker微服务部署之:四、安装docker、docker中安装mysql和jdk1.8、手动构建镜像、部署项目

    docker微服务部署之:三,搭建Zuul微服务项目 1.Centos7安装Docker 详见:Centos7安装Docker 2.Docker中安装jdk1.8 详见:使用Docker构建jdk1. ...

  10. docker:安装mysql多个

    文章来源:https://www.cnblogs.com/hello-tl/p/9238298.html 1.首先安装docker 参照一下网址安装docker docker:安装 https://w ...

随机推荐

  1. 2How To Use Python On A Web Page With Jinja2 - Fla 21:30

    # localhost:5000/user/John @app.route("/user/<name>") def user(name): return render_ ...

  2. P9118 [春季测试 2023] 幂次

    二诊前愉快的一次测试,关键是还有奶茶喝 第二题,本来直接暴力去重枚举可以的六十分的,但是.......花了30分钟优化剪纸,优化空间后,惨变35分. [春季测试 2023] 幂次 题目描述 小 Ω 在 ...

  3. thinkphp中的or,like,in等联合查询

    数据库中的两个字段有一个字段等于查询条件时,下面两个方法都是可以的: (1) $where['a.goods_name|a.goods_sn'] = array('like',"%$keyW ...

  4. USB分析仪USB3.2日志分析

    1.简介 USB2.0总线采用轮询模式,即总线事务开始时,都要先发送IN或者OUT令牌包,以通知端点或者查询端点是否准备好.而USB3.2采用了异步通知模式,若端点没有准备好,则主机无需轮询,端点准备 ...

  5. USB协议详解第1讲(核心概念通俗理解)

    0.概括 USB协议学习中最重要几个概念如下,没有提及的就是对USB协议学习中不重要的或者编程不需要用到的.大家也不用着急,概念必须要学会,否则都不知道下面这些东西是什么还学什么通用串行总线协议,大家 ...

  6. perf时 出现[kernel.kallsyms] 符号怎么办

    在 perf 工具生成的火焰图中看到 [kernel.kallsyms],通常意味着火焰图中包含内核符号,但这些符号没有被正确解析.这可能是由于以下几个原因导致的: 内核符号表不可用或不完整:perf ...

  7. 利用cv2.morphologyEx提取图像边界

    cv2.morphologyEx(image, cv2.MORPH_GRADIENT, SE)可以参考这篇博客cv2.MORPH_GRADIENT:形态学梯度(morph-grad),可以突出团块(b ...

  8. TX御加固脱壳

    示例APP某小说 其实脱这个有好几个方法,我使用了两个方法都可以脱掉. 首先使用Y佬的APK测试: 上传文件后经过等待提示任务成功,把给的ZIP包下载下来. 解压后得到两个文件,txt文件是脱壳后的a ...

  9. 7-11 leetcode 2619

    请你编写一段代码实现一个数组方法,使任何数组都可以调用 array.last() 方法,这个方法将返回数组最后一个元素.如果数组中没有元素,则返回 -1 . ps:this 环境变量的使用 ,this ...

  10. 06 Word2Vec模型(第一个专门做词向量的模型,CBOW和Skip-gram)

    博客配套视频链接: https://space.bilibili.com/383551518?spm_id_from=333.1007.0.0 b 站直接看 配套 github 链接:https:// ...