整理了一下Docker的概念

73 阅读2分钟

笔记大纲

  • Docker作用
  • Docker核心概念
  • Docker常用命令
  • Dockerfile构建镜像
  • Docker Compose

1.Docker的作用

Docker是一个开源的容器引擎,目的是更快的打包、测试和部署应用程序。Docker容器相当于一个轻量级的操作系统,容器之间是资源隔离的,但是都可以同时运行在同一个宿主机上。

2.Docker核心概念

  • Docker Client:Docker客户端,接受用户的命令和反馈响应。
  • Images 镜像:Docker容器运行的模板载体,所有的容器要运行起来必须得有镜像的支持。
  • Container 容器:通过镜像运行得到的一个容器实例,一个镜像可以运行出多个容器实例。容器和镜像的关系类似于面向对象里面的对象和类的关系。
  • Registry 仓库:镜像仓库,类似于我们的Maven仓库一样,可以将镜像发布到仓库中,以供其它应用拉取使用。

3.Docker常用命令

docker search tomcat:通过docker search可以在Docker仓库中搜索需要的镜像。 docker pull java:8:拉取/下载镜像到本地。 docker images:在控制台陈列出本地已经下载的镜像列表。 docker rmi java:删除镜像,强制删除可以在后面跟一个 -f docker run -d -p 8081:8080 tomcat:创建并启动容器。-d 表示后台运行。-p表示端口映射。 docker ps:在控制台陈列出正在运行的容器列表。 docker stop 容器ID:停止指定容器。 docker kill 容器ID:强制杀死容器并停止。 docker start 容器ID:启动停止中的容器。 docker exec 容器ID:进入容器命令行环境,一般是进入容器里面安装一些插件或者排查日志等。 docker rm 容器ID:删除已经停止的容器,如果带上 -f 则可以删除正在运行中的容器。

4.Dockerfile

将应用程序封装成一个Docker认识的镜像可以使用Dockerfile技术来做,Dockerfile本质是一个文本文件,里面编写一些命令。这些命令必须符合Dockerfile格式要求。 image.png 最后,通过docker build -t 应用程序名来构建Docker镜像,然后通过docker run 镜像名就可以启动容器并启动了我们的应用程序。

5.Docker Compose 容器编排(非重点)

现在主流的公司并没有采用这种Docker Compose编排技术,而是使用K8s去做,但是Docker Compose也是提供了一个通过一个编排文件,在文件里面编写编排Docker容器的docker命令,然后就会自动的启动协调各个容器的启动功能。