讲讲什么是Docker

docker是一个容器技术,最大的好处是做资源的分配和管理,传统的linux部署项目不好管理内存等资源的分配,造成了应用之间资源竞争的情况,Dcoker的出现解决了这一问题。我们可以把我们的应用打包成Docker的镜像,然后启动成容器。容器和容器之间相互隔离也可以互相通信。就类似于有多个主机一样。

讲几个Docker的命令

docker images :查看本地镜像

docker search : 搜索镜像

docker pull : 下载镜像

docker push : 上传镜像到仓库

docker rmi : 删除镜像

docker run : 创建并启动一个容器

docker ps : 查看容器

docker rm :删除容器

docker stop : 停止容器

docker kill :停止容器

docker start : 启动容器

docker exec -it 容器名 /bin/bash : 进入容器

docker exit :退出容器

docker cp : 拷贝文件到容器,或者从容器中拷贝文件到linux

docker logs : 查看容器的日志

怎么把文件上传到容器中

docker cp 或者在启动容器的时候增加 -v 做目录映射

某个服务不可访问了你怎么排查

服务不可访问,那就是容器出问题了,我会去找到对应的容器是不是挂了,或者使用docker logs 查看日志根据错误日志来排错。

容器之间怎么通信

使用容器IP通信,但是容器重启IP会变动,不建议

使用端口映射也可以通信,但是内网部署的应用不需要做端口映射,所以这个不建议用

使用—link 名字进行通信

使用桥接网络通信

对于Redis和zuul网关你怎么部署

首先肯定要下载一个redis的镜像, 对于zuul的镜像可以使用docker插件对zuul进行打包。

redis是不需要暴露给外网的,所以不要做端口映射,可以使用—link或桥接网络通信 ,而zuul是服务访问入口需要做端口映射进行外网部署。