Docker入门:docker安装mysql
1、docker简介
参考
https://mp.weixin.qq.com/s?__biz=MzI4NDY5Mjc1Mg==&mid=2247484517&idx=1&sn=fefa04a44381b98014d93325146db970&chksm=ebf6dc1adc81550c0f06b1d643f857ef9376304ff378301fd6c756827a471b45bb2b72e417ae&scene=21#wechat_redirect
视频https://www.bilibili.com/video/av38657363?p=53
2、linux安装docker
- 查看linux内核版本
[root@VM_0_5_centos ~]# uname -r
3.10.0-514.26.2.el7.x86_64
确保版本在3.10以上。如果版本比较低,可以用yum update
进行升级
- 安装docker
yum install docker
- 启动docker
systemctl start docker
- 设置docker开机启动
systemctl enable docker
- 关闭docker
systemctl stop docker
- 启动后查看docker版本来检测是否安装成功
docker version
- 在docker仓库中查找mysql
docker search mysql
结果如下:
[root@VM_0_5_centos ~]# docker search mysql
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/mysql MySQL is a widely used, open-source relati... 8792 [OK]
docker.io docker.io/mariadb MariaDB is a community-developed fork of M... 3081 [OK]
docker.io docker.io/mysql/mysql-server Optimized MySQL Server Docker images. Crea... 652 [OK]
docker.io docker.io/centos/mysql-57-centos7 MySQL 5.7 SQL database server 64
docker.io docker.io/centurylink/mysql Image containing mysql. Optimized to be li... 61 [OK]
docker.io docker.io/mysql/mysql-cluster Experimental MySQL Cluster Docker images. ... 56
docker.io docker.io/deitch/mysql-backup REPLACED! Please use http://hub.docker.com... 41 [OK]
docker.io docker.io/bitnami/mysql Bitnami MySQL Docker Image 35 [OK]
docker.io docker.io/tutum/mysql Base docker image to run a MySQL database ... 34
docker.io docker.io/schickling/mysql-backup-s3 Backup MySQL to S3 (supports periodic back... 28 [OK]
docker.io docker.io/prom/mysqld-exporter 23 [OK]
docker.io docker.io/linuxserver/mysql A Mysql container, brought to you by Linux... 22
docker.io docker.io/centos/mysql-56-centos7 MySQL 5.6 SQL database server 17
docker.io docker.io/circleci/mysql MySQL is a widely used, open-source relati... 15
docker.io docker.io/mysql/mysql-router MySQL Router provides transparent routing ... 13
docker.io docker.io/arey/mysql-client Run a MySQL client from a docker container 12 [OK]
docker.io docker.io/imega/mysql-client Size: 36 MB, alpine:3.5, Mysql client: 10.... 8 [OK]
docker.io docker.io/openshift/mysql-55-centos7 DEPRECATED: A Centos7 based MySQL v5.5 ima... 6
docker.io docker.io/fradelg/mysql-cron-backup MySQL/MariaDB database backup using cron t... 4 [OK]
docker.io docker.io/ansibleplaybookbundle/mysql-apb An APB which deploys RHSCL MySQL 2 [OK]
docker.io docker.io/devilbox/mysql Retagged MySQL, MariaDB and PerconaDB offi... 2
docker.io docker.io/genschsa/mysql-employees MySQL Employee Sample Database 2 [OK]
docker.io docker.io/jelastic/mysql An image of the MySQL database server main... 1
docker.io docker.io/monasca/mysql-init A minimal decoupled init container for mysql 0
docker.io docker.io/widdpim/mysql-client Dockerized MySQL Client (5.7) including Cu... 0 [OK]
也可以通过https://hub.docker.com/查找mysql镜像文件
- 从仓库拉取mysql镜像
docker pull mysql:5.7.21
冒号后面可以指定版本号,通过网页可以查看官方提供的版本号。 - 查看本机拥有的docker镜像
docker images
- 删除本机docker镜像
docker rmi 镜像id
- 运行docker的mysql镜像
docker run --name mysql-5 -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.21
命令解释:
--name mysql-5:用来自定义容器名字
-d :表示后台运行
-p 3306:3306 :指定端口,前面的为linux端口,后面的为容器中的端口
-e MYSQL_ROOT_PASSWORD=123456 :用来指定mysqlROOT用户秘密,不指定启动会报错。
mysql:5.7.21 :安装的镜像,就是之前拉取的镜像,需要指定版本不然会到仓库拉取最新版mysql再安装
- 查看安装的容器
docker ps -a
- 查看正在运行的容器
docker ps
- 删除容器
docker rm 容器id
- 启动容器
docker start 容器id
- 停止容器
docker stop 容器id