首页 > 数据库 >docker-compose安装mysql.211216

docker-compose安装mysql.211216

时间:2025-01-08 10:26:20浏览次数:1  
标签:compose mysql mysql.211216 MYSQL docker PASSWORD ROOT

0. 安装docker-compose

参见本站另外文章

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

assets/docker-compose安装mysql.211216/file-20250108100627975.png

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 命令。

assets/docker-compose安装mysql.211216/file-20250108101118578.png

停止但不删除容器:

docker-compose stop

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

标签:compose,mysql,mysql.211216,MYSQL,docker,PASSWORD,ROOT
From: https://www.cnblogs.com/amadeuslee/p/18659128

相关文章

  • mysql忘记密码的终极解决方案(docker-compose).211216
    MYSQL8的安全性能有所提高,装好后,各种不适应,需要各种调试。1.首先,root密码忘记或是更改,操作步骤:vimysql/config/my.cnf在[mysqld]的段中加上一句:skip-grant-tables=1保存并且退出vi。2.docker-composerestart进入bash,运行mysql-uroot-p,回车,直接进入。下面很重要,特别......
  • spring boot Linux dockerfile与Windows dockerfile区别
    在创建Dockerfile来构建SpringBoot应用程序的容器时,Dockerfile本身通常与操作系统的差异无关,因为Docker容器是跨平台的。然而,在某些情况下,可能会有一些细微的差别,这些差别主要来自于文件路径格式、换行符等操作系统之间的差异。以下是可能需要注意的几个方面:文件路径格式Windo......
  • 《docker基础篇:4.Docker镜像》包括是什么、分层的镜像、UnionFS(联合文件系统)、docker
    @目录4.Docker镜像4.1是什么4.1.1是什么4.1.2分层的镜像4.1.3UnionFS(联合文件系统)4.1.4docker镜像的加载原理4.1.5为什么docker镜像要采用这种分层结构呢4.2重点理解4.3docker镜像commit操作案例本人其他相关文章链接4.Docker镜像这一块主要讲解docker镜像的底层原理。......
  • Docker:安装 XXL-JOB 分布式调度任务的技术指南
    1、简述XXL-JOB是一个分布式任务调度平台,提供简单易用的任务调度功能。它支持分布式调度、失败重试、任务监控和报警等功能。XXL-JOB采用了服务端与执行器的架构,任务调度在服务端进行,而任务的实际执行则由各个执行器完成。XXL-JOB的核心功能包括:支持分布式任务调度和......
  • docker启动nacos报错: Nacos Server did not start because dumpservice bean constru
    一、docker启动nacos报错:mysql版本:8nacos版本:2.xNacosServerdidnotstartbecausedumpservicebeanconstructionfailure:NoDataSourcesetNacosisstarting,youcandockerlogsyourcontainer+exec/opt/java/openjdk/bin/java-XX:+UseConcMarkSweepGC-XX:+U......
  • 我用Ai学Android Jetpack Compose之Column
    这篇学习一下Column。我想学习Column,输入框,麻烦你介绍一下当然可以!Column是JetpackCompose中用于垂直布局多个子组件的容器。它允许你将多个Composable函数按从上到下的顺序排列,并提供了丰富的配置选项来调整其内部元素的对齐方式、间距等属性。1.基础用法A.简......
  • docker配置mysql一主多从。宿主机Navicat Premium 15通过不同ip连接
    1.环境准备1.1拉取MySQL镜像dockerpullmysql:8.0解释:从Docker官方镜像仓库中拉取MySQL8.0镜像,确保我们使用最新版本。如果已经拉取,可以跳过这步。1.2创建自定义网络(二选一)1.2.1创建自定义网络(端口不同)dockernetworkcreatemysql-cluster解释:创建......
  • Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
    Docker是一个开放源代码的容器化平台,用于轻松构建、打包和部署应用程序。它基于操作系统层面的虚拟化技术,通过创建容器来隔离应用程序的运行环境,使应用程序能够在不同的操作系统上运行,而无需担心依赖关系和环境差异。Docker的主要优势包括:简化应用程序的构建与部署:Docker......
  • 【Docker基础】Docker Desktop超详细入门使用指南
    前言大家好,我是小徐啊。今天介绍下什么是DockerDesktop以及如何使用。docker是一个帮助我们进行容器化部署的应用,但一开始,它只有命令界面,对于不太习惯使用命令的小伙伴比较难上手。所以,后来官方就出了一个可视化的软件DockerDesktop,帮助我们简单直观的使用docker,让我们可以轻松......
  • docker 官网安装+ nvidia gpu toolkit
    docker安装https://docs.docker.com/engine/install/ubuntu/#AddDocker'sofficialGPGkey:sudoapt-getupdatesudoapt-getinstallca-certificatescurlsudoinstall-m0755-d/etc/apt/keyringssudocurl-fsSLhttps://download.docker.com/linux/ubuntu......