Docker介绍及其基本操作 | 青训营

58 阅读3分钟

Docker简介| 青训营

Docker是一种操作系统级虚拟化技术,可以提供轻量级的虚拟化解决方案。Docker利用容器技术,可以在沙箱机制下运行独立的应用。

概念

管道类似于文件重定向,可以将前一个命令的stdout重定向到下一个命令的stdin

要点

  1. 管道命令仅处理stdout,会忽略stderr
  2. 管道右边的命令必须能接受stdin
  3. 多个管道命令可以串联。

与文件重定向的区别

  1. 文件重定向左边为命令,右边为文件。
  2. 管道左右两边均为命令,左边有stdout,右边有stdin

Docker的优势

  • 更高效的利用系统资源,一台物理机可以运行多个容器实例
  • 快速部署应用,通过镜像可以快速创建容器
  • 持续交付和部署,可以通过Dockerfile构建镜像自动化部署应用
  • 可移植性,可以将环境和配置打包到镜像中,并在不同环境中运行
  • 分离应用和基础设施,应用可以跨平台运行,减少环境依赖
  • 隔离应用,容器机制提供了隔离和安全保障

Docker基本概念

  • 镜像(Image):包含文件系统的模版,一个只读的层叠文件系统
  • 容器(Container):从镜像创建的运行实例,可以启动、停止和删除
  • 仓库(Repository):集中存放镜像文件的场所,可以是私有仓库或公共仓库

Docker基本操作

安装Docker

可以按照Docker官方文档中的步骤,在不同平台上安装Docker。

镜像操作

  • docker pull:从仓库拉取镜像到本地
  • docker images:列出本地镜像
  • docker rmi:删除本地镜像
  • docker build:使用Dockerfile构建镜像
  • docker tag:为镜像打标签
  • docker push:将镜像推送到仓库

容器操作

  • docker ps:列出运行中的容器
  • docker run:创建并启动一个容器
  • docker start/stop/restart:启动/停止/重启容器
  • docker rm:删除容器
  • docker exec:在运行中的容器内执行命令

其他常用命令

  • docker logs:查看容器日志
  • docker attach:进入运行中的容器
  • docker cp:在容器和主机间复制文件
  • docker inspect:查看容器内部信息

Docker架构

Docker主要由以下几个组件组成:

  • Docker客户端:用户与Docker交互的主要工具
  • Docker守护进程:管理镜像、容器、网络和存储的后台进程
  • Docker registry:保存镜像的仓库,可以是公有仓库或私有仓库
  • Docker compose:用于定义和运行多容器应用
  • Docker engine:管理和运行容器的基础,包括镜像管理、容器执行引擎等功能

客户端通过REST API或CLI与守护进程通信,完成对镜像和容器的管理。守护进程与容器实例通过内部网络通信。整个架构保证了Docker的高性能和稳定性。

总结

Docker通过提供简单易用的容器虚拟化,极大地简化了应用的分发和部署。利用Docker可以轻松将应用运行在不同环境中。它正在成为构建持续交付和部署流程的重要基础。