1 常见问题总结
- Docker是什么?(虚拟引擎,容器化技术平台,基于docker创建镜像,启动容器)
- Docker用于解决什么问题?(简化部署-例如sentinel镜像,运维,提高其服务的可维护性)
- Docker的基本架构是怎样的?(Client/Server,pull,run,build都属于客户端指令,通过这些指令向docker服务发起请求)
- Docker中有哪些核心对象?(Image/Container/Volume)
- 如何理解docker中的镜像(Image)?(一套文件系统,是静态,需要放到容器中去运行。类似一个jar包,需要JVM)
- 如何理解Docker中的容器(Container)?(一个的进程,拥有独立的namespace,通过namaspace实现容器隔离)
- 如何启动,停止docker服务?(systemctl start docker,systemctl stop docker)
- Docker平台下镜像,容器有哪些操作?(…,run,ps,ps -a,stop,start,restart,exec,logs,exit,rm,prune)
- 什么数据卷,为什么要使用数据卷,如何使用数据卷?
- 为什么我们要自己制作镜像?制作镜像的步骤是怎样的?
- 如何加载本地(Linux宿主机)镜像文件,存储到docker的本地镜像仓库中?(docker load < /目录/镜像文件)
- 如何从远程镜像仓库去下载镜像文件?(docker pull 镜像文件)
- 如何基于docker运行常用的镜像文件?(MySql,Redis,Nginx,Naocs等)
- 如何在启动镜像容器时实现目录或数据卷的挂载?(是宿主机挂载到容器)
- 如何查看容器启动日志?(docker logs 容器id)
- 退出容器后想再进入容器怎么办?(首先docker ps查看容器是否在运行,假如没有运行要start启动)
2 常见BUG分析
-
虚拟机系统没有ip地址怎么办?
方案一: VM中移除其他虚拟机,然后在编辑中–>虚拟网络编辑–>选中Vment8–>管理员更改设置–>还原默认设置–>重新启动虚拟机即可
**方案二:**检查vmvare如下服务是否启动了,假如没有启动,则启动服务,重新打开vmvare。 -
容器使用着镜像时,不能删除镜像,例如
-
不要在容器(Container)内部使用docker指令,例如:
-
Docker容器进入失败,例如:
-
容器运行时不能删除容器,除非强制删除例如:
[root@centos7964 images]# docker rm fcb
Error response from daemon: You cannot remove a running container fcb8fb575aaad5c8b99421cb8707e0701aae5e6062286bc03ca0766287270527. Stop the container before attempting removal or force remove
-
Docker 目录挂载失败,例如:
-
启动容器时,提示端口被占用,例如
- 容器启动了,但是通过docker ps 看不到容器?(一定要去看日志)
- 不能在容器内执行docker指令(因为你的docker没有安装到容器中)
- Dockerfile的大小写以及文件内容的不完整(注意拷贝时,单词要拷贝完整)
- 容器已经存在,但还要再创建,要注意名字重复.(可能你创建过这个容器,但是启动失败了)
- 假如有容器使用着这个镜像,镜像是不允许删除的.
- 基于镜像执行了docker run操作,但是通过docker ps看不到运行容器?(一定要日志)
- No Datasource Set?
- 连接被拒绝,例如