docker学习一 docker简介& 安装& 基本操作

腾讯92& 93

一 docker介绍

1.什么是容器

    水杯---装水

    酒瓶---装酒

    笔筒---装笔

    docker--用来装应用程序的

2.为什么使用docker

  程序员--搭建开发环境

  测试员--搭建测试环境

  运维人员--搭建运维环境

3.docker与虚拟机的区别

  

   1)装不同的虚拟机,是使用不同的内核

   2)docker上装不同的容器,容器与容器之间是共享内核

   3)容器的交互性比虚拟机好;

        容器的启动速度比虚拟机快;

        容器所占用的内存比虚拟机小多了;

  4)

 4 docker架构

1) 主要分为三部分:客户端,服务端,远程仓库

2)是CS架构,使用restful的API

3)一个docker是一个应用程序,但可以开很多进程,进程的数量可以达到6万多以上,进程占用的是不同的端口

待学习:docker不同窗口的配置

 二 docker的安装

1.在window中安装docker

   官方安装教程:https://docs.docker.com/docker-for-windows/

   注意:windows不能是家庭版本,只能是专业版本或者教育版本

2.在linux中安装docker(建议使用)

   1) 依赖前提:linux内核版本>=3.8

       如何查看linux内核版本 uname -a | awk '{split($3, arr, "-"); print arr[1]}"

   2)在centos中安装docker

      https://docs.docker.com/install/linux/docker-ce/centos/

    3) 在ubuntu中安装docker

     https://docs.docker.com/install/linux/docker-ce/ubuntu/

    4) 检查docker是否安装成功

       sudo docker version

       sudo docker info

       sudo docker run --rm hello-world

      

   5)配置国内镜像源,下拉镜像时候速度会更快

       vi /etc/docker/daemon.json

       

    配置好之后重启docker服务

    systemctl restart docker

   docker info查看镜像源是否配置成功

 三 基本操作

1. docker中如果想要启动一个服务,就需要有镜像;可以理解为镜像就是你要启动服务时候的所有配置文件

2. 镜像操作

  镜像 ---》 安装包

  docker images -a       列出当前的所有镜像,包含异常的镜像

  docker image ls         列出当前的所有镜像,这是mangement command

  docker images           列出当前的所有镜像,这是command命令,更为j简洁

  docker image rm nginx:alpine          删除镜像,如果报错,可能是该容器正在运行

  docker image rm -f nginx:alpine       强制删除正在运行中的镜像

  docker rmi   镜像名

  docker rmi -f  镜像名                 强制删除镜像

  docker history nginx:alpine       可以查看镜像安装包的一个过程

  docker search python               在仓库中搜索python这个镜像

  docker pull mysql:5.7                下载mysql5.7版本的镜像

  docker inspect mysql:5.7           查看镜像的详细信息

3. 容器操作

  容器 ----》运行镜像之后的一个状态

   docker rm 容器名

   docker container ls    查看当前的所有容器,这是management command

   docker ps                  查看当前正在运行的容器,就是docker command

   docker ps -a              查看当前所有的容器

   docker ps -a |awk '/Exited/ {print $1}'       过滤出所有包含第一列的

   过滤出所有包含第一行和最后一行的

   

   docker run [options] image [command] [arg...]          选项一定要在镜像的前面

   docker run --help |egrep '-i,|-t,'    # 查看帮助文档的时候,进行过滤

   docker run --name centos_test -it centos /bin/bash                创建容器并运行

    --name        给容器命名

    -p 1111:80   数组机的1111端口映射到容器的80端口

    -P                指定随机端口做映射

     -d    让容器可以在后台执行,还不太清楚在后台运行有啥好处?

     -v    目录映射

     -v  /home/zwz:/workspace     将数组机的目录也就是服务器上的目录映射到容器里的目录

    --rm              当容器为exited状态时,会自动删除这个容器

    --gpus all      使用gpu模式跑

    -e                 设定环境变量

  

 --restart=always                             只要容器退出就会自动重启,一直到容器是up的状态为止

docker exec -it web14 /bin/bash     只能进入到状态为up的容器中去,就是只能为运行中的容器

docker top 容器名                           查看容器的相关信息,相当于linux中的ps

 docker stats 容器ID                      查看容器的资源利用率情况

 docker stop 容器ID         停止容器

 docker  restart  容器ID      开启容器

  docker pause 容器ID        暂停容器

  docker  ubpause  容器ID    启动容器

   docker rm 容器名                      删除镜像名

   docker rm -f 容器名                   强制删除镜像名

  4. 容器中的volumn,可以在更多了解一下---- 腾讯93

  

原文地址:https://www.cnblogs.com/wz123/p/15315339.html