Docker的应用

 Docker作用

           Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低
一、安装Docker
  1.环境准备:需要Linux基础
             centos7版本
             使用xshell远程控制连接
  2.系统查看:
     [root@localhost /]  uname -r
     3.10.0-862.el7.x86_64
  3.系统版本
      [root@localhost /] cat /etc/os-release 
        NAME="CentOS Linux"
        VERSION="7 (Core)"
        ID="centos"
        ID_LIKE="rhel fedora"
        VERSION_ID="7"
        PRETTY_NAME="CentOS Linux 7 (Core)"
        ANSI_COLOR="0;31"
        CPE_NAME="cpe:/o:centos:centos:7"
        HOME_URL="https://www.centos.org/"
        BUG_REPORT_URL="https://bugs.centos.org/"

        CENTOS_MANTISBT_PROJECT="CentOS-7"
        CENTOS_MANTISBT_PROJECT_VERSION="7"
        REDHAT_SUPPORT_PRODUCT="centos"
        REDHAT_SUPPORT_PRODUCT_VERSION="7"

   4.安装
     https://www.docker.com/
     https://docs.docker.com/ 文档地址
    帮助文档:
      1.卸载旧的版本:
        sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
       2.需要的安装包
         sudo yum install -y yum-utils
       3.设置镜像仓库
        sudo yum-config-manager --add-repo \
               https://download.docker.com/linux/centos/docker-ce.repo  默认是国外镜像
      sudo  yum-config-manager --add-repo \
       http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  阿里云镜像地址

       
        更新yum软件包索引
          yum  makecache fast 
       
       4.安装docker相关的   docker-ce 社区  ee企业版
           sudo yum install docker-ce docker-ce-cli containerd.io
           如果出现错误后面添加 --skip--broken
        5.启动docker:   systemctl start docker
        6.使用docker:
           关闭防火墙: systemctl stop firewall.service
           查看防火墙状态: firewall-cmd  --state
        7.docker version  
            Client: Docker Engine - Community
             Version:           20.10.7
             API version:       1.41
             Go version:        go1.13.15
             Git commit:        f0df350
             Built:             Wed Jun  2 11:58:10 2021
             OS/Arch:           linux/amd64
             Context:           default
             Experimental:      true
            Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
        8.测试:下载一个镜像docker  run  hello-world
        9.查看下载的hello-world 镜像

           docker  images
        10.卸载docker依赖
            sudo yum remove docker-ce docker-ce-cli containerd.io
          删除资源:
            sudo rm -rf /var/lib/docker
            sudo rm -rf /var/lib/containerd
                       
安装出现的问题:
 1.Centos7安装docker(报错:container-selinux >= 2:2.74)
  解决:安装必要的一些系统工具
           yum install -y yum-utils device-mapper-persistent-data lvm2
        添加软件源信息
        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
  2.container-selinux版本低或者没有安装
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    yum install epel-release
    yum makecache  fast
    yum install container-selinux

二、配置阿里云镜像加速使用


    sudo  mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
     "registry-mirrors":["https://xxx.ailiyuncs.com"]
    
    }
    EOF
    
    sudo  systemctl daemon-reload
    sudo  systemctl restart docker

三、docker工作原理


    Docker如何工作的?
     Docker是一个Client-Server结构的系统,Docker的守护进程运行在主机上。通过Socket从客户端访问
     DockerServer接收到Docker-Client的指令,就会执行命令
       


四、Docker的基本命令


    1.帮助命令  docker version   # 看版本
         docker  info             # 显示docker的系统信息,包括镜像和容器的数量
         docker  命令   --help   #  帮助命令
    2.帮助文档地址:
        https://docs.docker.com/reference/
    3.镜像命令:
       1.docker  images  查看所有本地的主机上镜像
       [root@localhost ~]# docker images
        REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
        hello-world   latest    d1165f221234   3 months ago   13.3kB
        说明:
          REPOSITORY:镜像的仓库源
          TAG:         镜像的标签
          IMAGE ID:  镜像的ID
          CREATED:   镜像的创建时间
          SIZE:      镜像的大小
       #可选项
         Options:
          -a, --all  Show all images (default hides) 列出所有的镜像
          -q, --quiet  Only show image IDs 只显示镜像的ID
       
       2.docker search   搜索docker镜像
        [root@localhost ~]# docker search mysql
                NAME                DESCRIPTION             STARS     OFFICIAL   AUTOMATED
                mysql               MySQL is a widely used, open-source relation…   11050     [OK]       
                mariadb             MariaDB Server is a high performing open sou…   4192      [OK]       
                mysql/mysql-server  Optimized MySQL Server Docker images. Create…   821                  [OK]
        #可选项:
          --filter=STARS=3000 搜索xxx STARS大于 3000的镜像
        3. docker pull  镜像名称    下载镜像
          docker  pull  mysql:5.7  
        4. docker rmi  镜像名称    删除镜像
            [root@localhost ~] docker rmi   -f 容器id  删除指定的容器
            [root@localhost ~] docker rmi   -f 容器id 容器ID 容器ID  删除多个容器
            [root@localhost ~] docker rmi   -f $(docker images -aq)  删除所有的容器
    
4.容器命令:
      说明:我们有了镜像才可以创建容器,Linux,下载一个centos镜像来学习
        docker  pull centos
      新建容器并启动
         docker run  image
         #参数说明
           --name ="name"  容器名字
           -d              后台方式运行
           -it                使用交互方式运行,进入容器查看内容
           -P    小P            指定容器的端口 -p 8080:8080
              -p  ip:主机端口 :容器端口
              -p  主机端口:容器端口(常用)
              -p  容器端口
           -p   大P         随机指定端口


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值