docker 入门
目标
- 基于centos 7实例操作安装docker
- 获取mysql镜像
- 构建一个mysql容器
- 简单使用mysql容器
安装docker
yum install -y docker
启动docker
systemctl start docker
停止docker
systemctl stop docker
搜索镜像
docker search mysql
加速获取镜像速度
编辑配置文件/etc/docker/daemon.json
,
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
在国内的镜像有
Docker 中国官方镜像加速 强烈推荐,更详细说明点我
获取镜像
docker pull mysql
获取docker下的容器运行状态
docker ps
获取正在运行的容器
docker ps -a
获取所有已构建的容器
基础知识
生成容器时,调用的启动脚本是/entrypoint.sh;通过查看/entrypoint.sh脚本内容,总结参数如下
mysqld #启动mysql服务,必须使用
MYSQL_ROOT_PASSWORD #设置mysql的root密码,必须使用
#以下二个参数添加除root之外的用户并设置密码,可选。
MYSQL_USER
MYSQL_PASSWORD
#设置生成容器时需要新建的数据库,可选
MYSQL_DATABASE
#容器的mysql数据库默认的保存路径是:
/var/lib/mysql
#容器的配置文件my.cnf的路径为:
/etc/mysql/my.cnf
CentOS 7 开启了SELinux时
chcon -Rt svirt_sandbox_file_t /var/data/mysql
使用mysql镜像构建一个myMysql容器
docker run --name myMysql -p 3306:3306 -v /var/data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=docker -d docker.io/mysql
其中:
-
-v
是用来映射宿主机目录下的配置文件到myMysql容器中,所以
-v ~/mysql_config/my.cnf:/etc/mysql/my.cnf
是配置文件的映射,-v /var/data/mysql:/var/lib/mysql
是数据存放目录的映射 -
-p
是用来映射宿主机上的端口到myMysql容器的端口,特别注意:如果同时中宿主机上开2个mysql的容器,这个宿主机的端口记得改 -
--name
是用来标识容器的名字,便于后面的使用
此时,再运行docker ps
就能看到刚刚启动的myMysql容器了,状态是up
查看容器的日志
docker logs myMysql
停止myMysql容器
docker stop myMysql
启动myMysql容器
docker start myMysql
获取myMysql容器的bash
便于后期进行交互
docker exec -it myMysql bash
会看到已经得到了myMysql容器的bash命令行,
此时可以按照正常使用mysql的方法使用mysql了。
root@70e4763a01c2:/# mysql -uroot -p
输入上面设置的密码后会进入mysql
更多关于mysql在docker上的使用
更多docker使用
docker --help
网友评论