Docker的基本组成

Docker的安装 - 图1
镜像(image)
Docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,
tomcat镜像—->run—->tomcat01容器(提供服务),通过这个镜像可以创建多个容器(最终服务运行或项目运行就是在容器中的)
容器(container)
Docker利用容器技术,独立运行一个或者一组应用,通过镜像来创建的。
启动,停止,删除,基本命令
目前就可以把这个容器理解为一个简易的Linux系统
仓库(repository)
仓库就是存放镜像的地方
仓库分为共有仓库和私有仓库
Docker Hub(默认是国外的,需要镜像加速)

安装Docker

环境准备

  • Linux基础
  • CentOS 7
  • Xshell远程终端工具

    环境查看

  1. # 系统内核是3.10以上的
  2. [root@localhost ~]# uname -r
  3. 3.10.0-1160.25.1.el7.x86_64
  4. # 系统版本
  5. [root@localhost ~]# cat /etc/os-release
  6. NAME="CentOS Linux"
  7. VERSION="7 (Core)"
  8. ID="centos"
  9. ID_LIKE="rhel fedora"
  10. VERSION_ID="7"
  11. PRETTY_NAME="CentOS Linux 7 (Core)"
  12. ANSI_COLOR="0;31"
  13. CPE_NAME="cpe:/o:centos:centos:7"
  14. HOME_URL="https://www.centos.org/"
  15. BUG_REPORT_URL="https://bugs.centos.org/"
  16. CENTOS_MANTISBT_PROJECT="CentOS-7"
  17. CENTOS_MANTISBT_PROJECT_VERSION="7"
  18. REDHAT_SUPPORT_PRODUCT="centos"
  19. REDHAT_SUPPORT_PRODUCT_VERSION="7"

安装

帮助文档:https://docs.docker.com/engine/install/centos/

  1. # 1 卸载旧的版本
  2. yum remove docker \
  3. docker-client \
  4. docker-client-latest \
  5. docker-common \
  6. docker-latest \
  7. docker-latest-logrotate \
  8. docker-logrotate \
  9. docker-engine
  10. # 2 需要的安装包
  11. yum install -y yum-utils
  12. # 3 设置镜像的仓库
  13. yum-config-manager \
  14. --add-repo \
  15. https://download.docker.com/linux/centos/docker-ce.repo #默认是国外,建议替换成阿里云镜像
  16. yum-config-manager \
  17. --add-repo \
  18. http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #阿里云镜像
  19. # 更新yum索引
  20. yum makecache fast
  21. # 4 安装docker docker-ce 社区版 ee 企业版
  22. yum install docker-ce docker-ce-cli containerd.io
  23. # 5 启动docker
  24. systemctl start docker
  25. # 6 查看是否安装成功
  26. docker version

image.png

  1. # 7 hello word
  2. docker run hello-world

image.png

  1. # 8 查看一下下载的这个hello-world镜像
  2. docker images
  3. [root@localhost ~]# docker images
  4. REPOSITORY TAG IMAGE ID CREATED SIZE
  5. hello-world latest d1165f221234 3 months ago 13.3kB

了解:卸载docker

  1. # 1 卸载依赖
  2. yum remove docker-ce docker-ce-cli containerd.io
  3. # 2 删除资源
  4. rm -rf /var/lib/docker
  5. # /var/lib/docker docker的默认工作路径

阿里云镜像加速 (只针对服务器在阿里云的用户)

  1. 登录阿里云找到容器镜像服务

image.png

  1. 找到镜像加速地址

image.png

  1. 配置使用 ``` sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-‘EOF’ { “registry-mirrors”: [“https://bxzvpm5j.mirror.aliyuncs.com“] } EOF

sudo systemctl daemon-reload

sudo systemctl restart docker ```

回顾Hello World启动

底层原理

Docker是怎么工作的?
Docker是一个Client-Server结构的系统,Docker 的守护进程运行在宿主机上,通过Socket从客户端访问。
DockerServer接收到DockerClient的指令,就会执行这个命令。
Docker为什么比VM快?

  1. Docker有着比虚拟机更少的抽象层。
  2. Docker利用的是宿主机的内核,VM需要的是Guest OS,新建一个容器的时候,Docker不需要像虚拟机一样重新加载一个操作系统内核,避免引导。

src=http___dingyue.nosdn.127.net_NBxrTubXg8VX777IpcSQFBmAvDEF8NC6Ku3LdtAn9DSnz1546746105824.jpg&refer=http___dingyue.nosdn.127.jpg
src=http___inews.gtimg.com_newsapp_match_0_10372500046_0.jpg&refer=http___inews.gtimg.jpg