Docker作为眼下流行的技术,已经越来越成为开发人员的必备技能。它可以方便的让我们快速的搭建起需要应用环境,像常用的redis、mq、tomcat、zookeeper、mysql、nginx镜像,在这里我总结一下使用方式,可以让你一篇文章就把这些知识点串链起来。
拉取镜像
目前我常用的是国内的网易的镜像,下载速度非常快。
docker pull hub.c.163.com/library/rabbitmq --从网易镜像拉取mq
docker pull hub.c.163.com/library/tomcat:latest --从网易拉去tomcat
docker pull hub.c.163.com/library/nginx --从网易拉取nginx
docker pull rabbitmq:3-management --这个版本的有后台显示可以看到监控页
docker pull hub.c.163.com/library/redis --从网易拉取redis
docker pull hub.c.163.com/library/elasticsearch —从网易拉取
docker pull hub.c.163.com/library/zookeeper --从网易拉取zookeeper
docker pull hub.c.163.com/library/mysql —从网易拉取mysql
查看镜像
拉取下来之后查看镜像,获得镜像id:
docker images -----查看拉取的镜像
启动镜像
启动镜像是非常关键的一步,各个不用应用的镜像的启动命令都有一定的差别,主要是端口的映射,下面的都是试验过,可以成功启动的镜像:
docker run -d --name “xdclass_nginx” -p 8088:80 nginx --启动nginx
docker run -d --name “xdclass_rabbitmq” -p 5672:5672 -p 15672:15672 db695e07d0d --运行mq;-d是后台运行;-p是指定端口映射
docker run -d --name xdclass_redis -p 6379:6379 d4f259423416 --启动redis容器,但实际redis没有启动
docker exec -it ce388f800aed redis-cli —docker中访问启动redis,it后面的是容器号。
docker run -d --name myzookeeper -p 2181:2181 --restart always 5e8e3d7b06f9 --启动zookeeper镜像
docker run -p 3306:3306 --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=rootroot -d 9e64176cd8a2. ----docker启动mysql,MYSQL_ROOT_PASSWORD后面的是启动设置的默认的root的密码。
查看已经启动容器
docker ps -a —查看所有的容器,包括已经启动和未启动的容器
docker ps. -----查看已经启动的容器。
Mysql的后续操作
Mysql的容器启动后,如果想通过navicat等客户端连接,还需要开通远程登录权限,下面是操作步骤:
步,在上面已经启动mysql容器后,进入容器:
docker exec -it c8486ec93afb bash
第二步,登录mysql:
mysql -u root -p —中间会提示输入先前docker run的密码rootroot;
第三步:添加远程访问mysql的权限:
mysql> grant all privileges on . to root@’%’ identified by ‘rootroot’ with grant option;
mysql> flush privileges;
注意:新设置的远程访问的用户名:root ,密码:rootroot ;
停止和重启容器命令
docker stop 283138f62bc2 —停止容器,容器号:283138f62bc2
docker start 283138f62bc2 --启动已经建立的容器号:283138f62bc2
docker stop $(docker ps -a -q) – stop停止所有容器