目录
一、百度百科
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
一个完成的docker有以下几个部分组成:
- DockerClient 客户端
 - Docker Daemon 守护进程
 - Docker Image 镜像
 - Docker Container 容器
 
二、Docker安装
1、卸载Docker
 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine 
2、需要的安装包
yum install -y yum-utils 
3、设置镜像仓库
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo 
用国内的
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  
更新软件包索引
yum mackecache fast 
4、安装Docker相关
ce社区版,ee企业版,推荐安装企业版
yum install docker-ce docker-ce-cli containerd.io 

5、启动Docker
systemctl start docker 
6、使用docker version查看版本

7、启动hello world镜像
docker run hello-world 

8、卸载
yum remove docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker
rm -rf /var/lib/containerd 
三、run的流程和docker原理
1、run的流程

2、docker原理

3、docker为何比VM快?
- Docker有着比虚拟机更少的抽象层
 - docker利用的是宿主机的内核,VM需要的是Guest OS。
 

四、Docker镜像常用命令
1、基本命令
docker images

可选项
2、搜索镜像
3、下载镜像

4、删除镜像
docker rmi -f 镜像id
五、docker容器常用命令
1、下载容器
2、docker run [可选参数] image
3、列出所有的运行的容器
例如:docker ps -aq 显示当前正在运行的容器的编号
4、退出容器
exit
5、删除容器
6、启动和停止容器
7、进入当前正在运行的容器
8、从容器内拷贝文件到主机
9、其它常用命令
(1)后台启动容器 -d
(2)查看日志命令
显示指定行数的日志:
-f:内容,,,-t:时间
例如:循环执行
(3)显示容器中的进行信息
(4)查看容器的元数据

六、docker常用命令小结
| 常用命令 | 命令含义 | 
| attach | 当前shell下attach连接指定运行镜像 | 
| build | 通过Dockerfile定制镜像 | 
| commit | 提交当前容器为新的镜像 | 
| cp | 从容器中拷贝指定文件或者目录到宿主机中 | 
| create | 创建一个新的容器,同run 但不启动容器 | 
| diff | 查看docker容器变化 | 
| events | 从docker服务获取容器实时事件 | 
| exec | 在已存在的容器上运行命令 | 
| export | 导出容器的内容流作为一个tar归档文件(对应import) | 
| history | 展示一个镜像形成历史 | 
| images | 列出系统当前镜像 | 
| import | 从tar包中的内容创建一个新的文件系统映像(对应export) | 
| info | 显示系统相关信息 | 
| inspect | 查看容器详细信息 | 
| kill | 强制停止指定docker容器 | 
| load | 从一个tar包中加载一个镜像(对应save) | 
| login | 注册或者登陆一个docker源服务器 | 
| logout | 从当前Docker registry退出 | 
| logs | 输出当前容器日志信息 | 
| pause | 暂停容器 | 
| port | 查看映射端口对应的容器内部源端口 | 
| ps | 列出容器列表 | 
| pull | 从docker镜像源服务器拉取指定镜像或者库镜像 | 
| push | 推送指定镜像或者库镜像至docker源服务器 | 
| rename | 重命名容器 | 
| restart | 重启运行的容器 | 
| rm | 移除一个或者多个容器 | 
| rmi | 移除一个或多个镜像(无容器使用该镜像才可以删除,否则需要删除相关容器才可以继续或者-f强制删除) | 
| run | 创建一个新的容器并运行一个命令 | 
| save | 保存一个镜像为一个tar包(对应load) | 
| search | 在docker hub中搜索镜像 | 
| start | 启动容器 | 
| stats | 统计容器使用资源 | 
| stop | 停止容器 | 
| tag | 给源中镜像打标签 | 
| top | 查看容器中运行的进程信息 | 
| unpause | 取消暂停容器 | 
| version | 查看容器版本号 | 
| wait | 截取容器停止时的退出状态值 | 
上一篇:Java学习路线总结(思维导图篇)
下一篇:Java学习路线总结,搬砖工逆袭Java架构师










