通用docker-compose安装mysql教程

47 阅读2分钟

docker-compose安装mysql教程

一、部署 docker

1)部署 docker

# 安装yum-config-manager配置工具
yum -y install yum-utils
​
# 官方yum源
#yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# 使用阿里云yum源(推荐)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
​
# 安装docker-ce版本
yum install -y docker-ce
​
#启动docker命令
systemctl start docker
​
#设置开机自启命令
systemctl enable docker
​
#查看docker版本命令
docker version

2)部署 docker-compose

#下载 Docker Compose 二进制文件
curl -SL https://github.com/docker/compose/releases/download/v2.16.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
​
#赋予执行权限
chmod +x /usr/local/bin/docker-compose
​
#验证 Docker Compose 版本
docker-compose --version

二、创建网络

# 创建,注意不能使用hadoop_network,要不然启动hs2服务的时候会有问题!!!
docker network create hadoop-network
​
# 查看
docker network ls

三、

1)部署 docker

# 拉去mysql镜像 版本根据自己实际情况改
docker pull mysql:5.7

2)创建dockerfile文件

# 基础镜像
FROM mysql:5.7
# author 作者
MAINTAINER xxx
​
# 执行sql脚本 这是启动mysql加载的sql文件
1,使用的话在当前目录新建db文件夹,拷贝sql文件进来,注意:sql文件一定要有创建数据库的语句
2,不使用初始化文件就注释
ADD ./db/*.sql /docker-entrypoint-initdb.d/
​

3)创建 docker-compose.yaml

# 描述 Compose 文件的版本信息
version: '3.8'
​
services:
    ruoyi-mysql:
        container_name: ruoyi-mysql      #容器名称    
        image: mysql:5.7                 #镜像名称  
        build:
            context: ./mysql
        ports:
            - "3306:3306"        #端口号
        volumes:
            - ./mysql/logs:/logs                      #日记
            - ./mysql/data:/var/lib/mysql             #mysql数据信息
            - ./mysql/db:/docker-entrypoint-initdb.d/ #执行sql脚本 不要就注释
        command: [            #mysql的配置,也可以通过文件映射方式进行配置
            'mysqld',
            '--innodb-buffer-pool-size=80M',         
            '--character-set-server=utf8mb4',
            '--collation-server=utf8mb4_unicode_ci',
            '--default-time-zone=+8:00',
            '--lower-case-table-names=1',
            '--log-bin=mysql-bin',
            '--log-bin-index=mysql-bin.index',
            '--server-id=1',
        ]
        networks:
          - hadoop-network              # 设置网络
        environment:
            MYSQL_ROOT_PASSWORD: haoxin # 设置 root 用户的密码
            TZ: "Asia/Shanghai"         # 设置 mysql 时区
        # 重启
        restart: always
        # 提供伪终端
        tty: true
        # root具备管理员权限
        privileged: true
        
     # 连接外部网络
    networks:
      hadoop-network:
        external: true

4)创建 docker-compose.yaml

# 运行
docker-compose -f docker-compose.yaml up -d
​
# 查看
docker-compose -f docker-compose.yaml ps