阿里云服务器使用docker安装mysql

Posted 讲个故事给你听

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了阿里云服务器使用docker安装mysql相关的知识,希望对你有一定的参考价值。

前言

上一篇文章中,我们已经在阿里云服务器中安装了docker,这篇我们将继续使用docker在云主机中安装mysql。如果你对docker中的命令不了解,那也没有关系,文中使用到的命令我都会带上一点注释信息的。

其实docker中安装mysql主要就是做两件事儿:

①获取一个mysql的镜像;

②让这个镜像在容器中运行起来;

那下面我们就用两种方式来试一下吧!


一、命令安装方式

1.获取mysql镜像

首先要使用docker中的命令搜索一下这个镜像,操作命令如下(我指定搜索了mysql 5.7):

docker search mysql

将查询到的镜像拉到本地

docker pull mysql

mysql安装

2.在容器中运行镜像

启动容器:

docker run --name Dmysql5 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql

查看当前运行起来的全部容器:

docker ps -a   

在这里插入图片描述

  • docker run
    docker给出的命令提示是 Run a command in a new container,字面意思,让docker把某个容器跑起来,可通过docker --help命令查询docker run 的释义
  • –name 容器名
    Assign a name to the container 给要跑起来的容器起个名字 可通过docker run --help命令查询–name 的释义
  • -p 物理机映射端口:容器内部应用端口
    mysql默认使用3306端口,可通过docker run --help命令查询 -p, --publish list Publish a container’s port(s) to the host
  • -e MYSQL_ROOT_PASSWORD=123456
    设置mysql中Root用户的密码,-e 是设置环境变量 可通过docker run --help命令查询 -e, --env list Set environment variables
  • -d
    运行这个容器,并且打印生成的容器ID(可以尝试不加-d,不过容器启动时打印出来的内容之多,一屏装不下)可通过docker run --help命令查询 -d, --detach Run container in background and print container ID
  • mysql:5.7
    指定要用哪个镜像启动容器,是必须参数,不写的话命令执行不了,会提示至少写一个参数
  • docker ps
    同docker run一样,标准Command ,可通过docker --help命令查询docker ps 的释义 ps List containers
  • -a
    就是像大家想的那样,是all的意思,可通过docker ps --help命令查询 -a, --all Show all containers (default shows just running) 不仅只有-a哟,还有 -l,-s 等一群小朋友呢

–help 是不是很Nice,反正Docker已经装在咱的云主机上了,没事儿就自己 --help一下呗!还有关于端口映射,给大家上幅图👇👇👇

关于端口映射的解释图(才艺不多,就是图上这个意思,大家自己意会一下哈~~~)
在这里插入图片描述


二、界面安装方式

打开之前我们安装过的Portainer图形化操作界面(安装方式在上一篇文章中提到过,有兴趣的小伙伴儿可以去翻翻):
在这里插入图片描述
点击上面载货的小鲸鱼,可以看看这只小鲸鱼都装了啥货,我的有两个镜像,两个容器,一个是当前操作界面的,另一个就是上面咱们装的mysql5.7
在这里插入图片描述
点进显示的两个镜像看看:
在这里插入图片描述
镜像和加速器都看了,现在开始干正事,安装mysql,点进容器中,Add Container:
在这里插入图片描述
填写界面信息,要注意第五步和第六步的顺序,点错了mysql root就没有密码了,用的时候还得改,然后就是看着它在这里转圈圈吧,这里的确是找不到使用命令行时那种直观的感受的:
在这里插入图片描述
安装好就会跳转到容器列表界面,到这里docker就把MySQL安装好并且运行起来了:
在这里插入图片描述


三、Navicat连接mysql

这是我使用Navicat连接mysql5.7的报错,主要原因是:云主机没把对应的端口打开
想想也是差点儿啥,毕竟自己在虚拟机中安装mysql还特意在防火墙开放了指定端口呢,到了云主机这里,咋也不能例外啊!第二图的界面,熟悉不,上篇在文章中给portainer开放9000端口不也是在这里么~~~,所以啊,以后云主机装了啥,都别忘了这一步,不然,本地可能连不上你装的工具呢!
(上面我介绍端口映射那会儿运行了新的容器映射了3308端口,上图没改,这是意外,大家不要照抄🙅‍🙅‍🙅‍)
在这里插入图片描述
在这里插入图片描述
端口打开之后,一连就连上了,暂时没出现其他的问题,当然我也见过很多博文中描述的连接时出现的各种问题,不过我这次没出现,不能给大家记录下来了,以后遇到再补充吧!
在这里插入图片描述
文中还有许多不足之处,可能有些内容我的理解也存在偏差,如果哪位小伙伴有不同的看法,欢迎留言或者私信我,我们一起交流,一起进步呦!

总结

命令安装和界面安装两种方式各有各的好处,不过我还是建议小伙伴儿们使用命令安装,多敲敲命令才能记得更牢,况且 --help真的还是很香的嘛!!!

以上是关于阿里云服务器使用docker安装mysql的主要内容,如果未能解决你的问题,请参考以下文章

阿里云服务器使用docker安装mysql

阿里云服务器使用docker安装mysql

阿里云服务器中Docker安装与镜像使用MySQLredis快速访问

阿里云轻量服务器Docker容器上安装Mysql

阿里云服务器CentOS7.3上通过Docker安装MySQL

阿里云 Centos7安装ssh+nginx+mysql 傻瓜式教程