虚拟机安装Docker装载Mysql

目录

1.安装docker

[2. docker中安装mysql](#2. docker中安装mysql)

1.选择mysql镜像

2.查看镜像

3.启动mysql

4.修改配置

5.进入容器查看配置:

6.设置启动docker时,即运行mysql


1.安装docker

SSH 登录到虚拟机:
  • 使用MobaXterm或其他SSH客户端连接到虚拟机:

    复制代码
    ssh vagrant@127.0.0.1 -p 2222

    请注意,端口

    复制代码
    -p 2222

    是默认的SSH端口,如果在Vagrantfile中更改了SSH端口,需要相应地修改。

安装 Docker:
  • 如果之前安装了docker可以尝试先卸载('\'是用来换行的时候拼接命令的):

    复制代码
    yum remove docker \
                      docker-client \
                      docker-client-latest \
                      docker-common \
                      docker-latest \
                      docker-latest-logrotate \
                      docker-logrotate \
                      docker-selinux \
                      docker-engine-selinux \
                      docker-engine \
                      docker-ce
  • 更改镜像源仓库

    复制代码
    # 设置docker镜像源
    yum-config-manager \
        --add-repo \
        https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
        
    sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
    ​
    yum makecache fast
  • 在CentOS 7虚拟机上执行以下命令,安装Docker的ce社区版本:

    复制代码
    sudo yum install docker -ce
启动 Docker 服务:
  • 启动Docker服务前建议关闭防火墙:

    复制代码
     systemctl disable firewalld  
     systemctl stop firewalld         
  • 启动Docker服务:

    复制代码
    sudo systemctl start docker
设置 Docker 开机自启:
复制代码
sudo systemctl enable docker
配置镜像加速:

ocker官方镜像仓库网速较差,我们需要设置国内镜像服务:

参考阿里云的镜像加速文档:阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台

2. docker中安装mysql

使用docker安装应用,在docker镜像仓库都有对应的应用镜像,docker镜像仓库地址:https://hub.docker.com/

1.选择mysql镜像

右侧有对应的镜像拉取命令,不设置版本号就默认是lastest,我们这里拉取5.7版本

复制代码
 docker pull mysql:5.7
2.查看镜像
复制代码
[root@10 module]# docker images
REPOSITORY  TAG    IMAGE ID     CREATED       SIZE
mysql       5.7    f5829c0eee9e 2 hours ago   455MB
[root@10 module]# 
3.启动mysql
复制代码
sudo docker run -p 3306:3306 --name mysql \  # 映射端口3306,容器名称mysql
-v /mydata/mysql/log:/var/log/mysql \   # -v挂载文件目录,避免进入容器访问
-v /mydata/mysql/data:/var/lib/mysql \  # -v挂载文件目录,避免进入容器访问
-v /mydata/mysql/conf:/etc/mysql \  # -v挂载文件目录,避免进入容器访问
-e MYSQL_ROOT_PASSWORD=root \ #设置root密码
-d mysql:5.7 #后台启动
4.修改配置
复制代码
[root@10 conf]# pwd
/mydata/mysql/conf
​
[root@10 conf]# cat my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
[root@10 conf]# 
​
[root@10 conf]# docker restart mysql
mysql
[root@10 conf]# 
5.进入容器查看配置:
复制代码
[root@10 conf]# docker exec -it mysql /bin/bash
root@b3a74e031bd7:/# whereis mysql
mysql: /usr/bin/mysql /usr/lib/mysql /etc/mysql /usr/share/mysql
​
root@b3a74e031bd7:/# ls /etc/mysql 
my.cnf
root@b3a74e031bd7:/# cat /etc/mysql/my.cnf 
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
root@b3a74e031bd7:/# 
6.设置启动docker时,即运行mysql
复制代码
[root@10 ~]# docker update mysql --restart=always
mysql
[root@10 ~]# 

现在,你已经成功在虚拟机上使用Docker部署了MySQL服务。宿主机可以验证连接:

相关推荐
朝阳5811 小时前
MySQL 主从复制 — Docker 双机灾备方案
数据库·mysql·docker
染翰1 小时前
生产级 MySQL 内存占用过高排查指南
数据库·mysql
jiayong231 小时前
MySQL 排序规则冲突问题与 utf8mb4_general_ci 统一方案
android·mysql·ci/cd
ai产品老杨1 小时前
【架构实战】如何基于 Docker 与边缘计算构建企业级 AI 视频管理平台?打通 GB28181/RTSP 统一接入与异构算力调度,全量源码交付破解集成痛点
人工智能·docker·架构
IT策士1 小时前
Docker 从 0 到 1 再到 Kubernetes 实战:第18篇 从 Docker Compose 到 Kubernetes 的思考
docker·容器·kubernetes
linmengmeng_13142 小时前
【总结】Docker 容器重建后 Nginx 502 问题排查与解决
nginx·docker·容器
qq_356408662 小时前
Kubernetes Rook-Ceph 高可用存储部署文档
ceph·容器·kubernetes
Plastic garden2 小时前
Docker(3)Docker 镜像 & Dockerfile
运维·docker·容器
“码”力全开2 小时前
解耦异构算力与多协议接入:基于Docker与源码交付的开源GB28181/RTSP边缘计算AI视频管理平台架构深度解析
人工智能·docker·开源
小马爱打代码2 小时前
MySQL高可用与扩展:主从复制、读写分离、分库分表
服务器·数据库·mysql