讲讲什么是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是服务访问入口需要做端口映射进行外网部署。