云原生Docker创建并进入mysql容器的全过程
目录
- 前言
- 拉取镜像
- 创建容器
- 进入mysql容器
- 登录mysql
- 创建数据库
- 创建表
- 总结
前言
本文主要讲解的是创建mysql的容器,大家都知道,在外面进入mysql都很容易,“mysql -u用户名 -p密码”就可以,但是是容器的mysql就没那么好进入了,首先还要拉取镜像,创建容器,在进入容器,然后才可以进入mysql;其实也没有那么难,而且比在宿主机装一个mysql简便了很多,也省去了很多时间,比如,宿主机上mysql还要编译,容器就不用,但是最难的一点就是如何去创建容器呢,他和普通的创建容器是不一样的,所以,今天给大家讲讲创建mysql容易,并进入、创建库和表;
拉取镜像
如需要哪个mysql版本可以在后面直接写,比如我需要mysql:5.7.38的,就直接拉取5.7.38的镜像;如果需要默认的mysql,那么直接拉取mysql就好,默认的应该是最新的版本;
[root@localhost ~]# docker pull mysql:5.7.38 5.7.38: Pulling from library/mysql 66fb34780033: Pull complete ef4ccd63cdb4: Pull complete d6f28a94c51f: Pull complete 7feea2a503b5: Pull complete 71dd5852ecd9: Pull complete 3da2c95cac2f: Pull complete af7913db289c: Pull complete 77f552f93c12: Pull complete 3ed53edb61ab: Pull complete 67e1c6839f08: Pull complete abcdaaf08d0f: Pull complete Digest: sha256:bbe0e2b0a33ef5c3a983e490dcb3c1a42d623db1d5679e82f65cce3f32c8f254 Status: Downloaded newer image for mysql:5.7.38 docker.io/library/mysql:5.7.38
拉取完镜像查看一下:
docker images

接下来就是这一环节中最重要的一点了,创建容器;
创建容器
创建mysql容器,在后台启动mysql容器
- -it 以交互形式创建容器;
- –name 指定了容器的名称,方便之后进入容器的命令行;
- -p 指定映射端口,如果遇到端口被占用,可以使用其他端口比如3333:3306;就可以;
- -e MYSQL_ROOT_PASSWORD=123123 直接就指定了mysql的root密码;
- -d 表示在后台运行;
- mysql:3.7.38 代表的你用的哪个镜像
- 如果需要做数据映射,可以加个-v参数,-v 宿主机路径,容器内路径;
- 容器内 mysql数据文件目录:
/var/lib/mysql/- 容器内 mysql配置文件目录:
/etc/mysql/
需要哪个可自行选择,建议使用第三个:
因为第三种数据和配置文件都可以做到同步,要拿数据的话,可以直接在宿主机映射的目录拿就可以了;
docker run -it --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123123 -d mysql:5.7.38 #mysql默认版本的创建;就是最后不要:5.7.38了,其他都一样; docker run -it --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123123 -d mysql #加数据映射的容器创建;设置开机自启 docker run -itd --name mysql --restart=always --privileged -p 3306:3306 -v /var/lib/mysql/my.cnf:/etc/mysql/my.cnf -v /var/lib/mysql/data:/var/lib/mysql/data/ -v /etc/localtime/:/etc/localtime/ -e MYSQL_ROOT_PASSWORD=123123 mysql:5.7.38
这样容器就创建完成了;创建完查看一下容器;
docker ps -a

进入mysql容器
docker exec -it mysql bash
登录mysql
mysql -uroot -p123123
创建数据库
#首先查看一下数据库 show databases; #创建数据库 create database cs; #再次查看是否创建成功; show databases;

创建表
#进入刚刚创建的库 use cs; #查看表,里面是空的目前 show tables; #创建表 create table biaoone(id int,name varchar(20),age int); #查看表,现在是有一个的 show tables #查看表机构 desc biaoone;

总结
您可能感兴趣的文章
- 02-02hadoop动态增加和删除节点方法介绍
- 02-02干货 | Linux新手入门好书推荐
- 02-02linux系统下MongoDB单节点安装教程
- 02-02Linux下nginx生成日志自动切割的实现方法
- 02-02Centos 6中编译配置httpd2.4的多种方法详解
- 02-02CentOS7 下安装telnet服务的实现方法
- 02-02分布式Hibernate search详解
- 02-02Hadoop对文本文件的快速全局排序实现方法及分析
- 02-02CentOS6.3添加nginx系统服务的实例详解
- 02-02Hadoop编程基于MR程序实现倒排索引示例


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-07tomcat启动报错jar not loaded的问题
- 12-10docker start启动容器后仍然exit状态的解决
- 12-23linux中ftp无法访问怎么办
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-13k8s编排之Deployment知识点详解
- 12-10Linux下如何安装Logstash
- 12-15Docker-Compose搭建Spark集群的实现方法
- 12-11docker存储目录迁移示例教程
- 01-07windows server 2008安装配置DNS服务器




