• Windows10安装docker


    视频地址:http://study.163.com/course/courseLearn.htm?courseId=1005527017#/learn/video?lessonId=1052743396&courseId=1005527017

    阿里云容器镜像服务:https://cr.console.aliyun.com/?spm=a2c4e.11153940.blogcont29941.10.607569d6bfWjZd#/accelerator

    docker主页需要翻墙注册用户,https://www.docker.com/

    Docker发布了Docker for Windows的正式版,于是就可以在Windows下运行Docker容器了。要在Windows下运行Docker,需要满足以下先决条件:

    • 64位Windows 10 Pro、Enterprise或者Education版本(Build 10586以上版本,需要安装1511 November更新)
    • 在系统中启用Hyper-V。如果没有启用,Docker for Windows在安装过程中会自动启用Hyper-V(这个过程需要重启系统)
      不过,如果不是使用的Windows 10,也没有关系,可以使用Docker Toolbox作为替代方案。
    • 启用系统的Hper-V 和容器
    下载docker:
    https://link.jianshu.com/?t=https%3A%2F%2Fdownload.docker.com%2Fwin%2Fstable%2FInstallDocker.msi

     当我们运行docker for windows的时候可能会遇到不能运行的情况,提示信息如下:

    “Access denied. You are not allowed to use docker. You must be in the “docker-users” group.”
    这是因为我们当前的用户名没有在docker的用户组里面,我们添加进去即可。具体操作如下:

    win+r  >>>  compmgmt.msc  >>>  本地用户和组  >>>  组  >>>  docker-user  >>>  加入用户

    阿里云的镜像加速器,所以你需要登录到阿里云的官网(https://www.aliyun.com/),然后注册一个账号,这个是免费注册的,然后阿里云会给你提供一个你专属的加速地址,

    这时我们拿到这个地址之后,我们就可以在docker的配置文件里面进行设置了,我这里使用的是centos虚拟机,所以配置文件是/etc/sysconfig/docker,在OPTIONS里面添加上--registry-mirror=https://xxxx.mirror.aliyuncs.com,这个参数,xxxx要改成你自己的专属地址,

    修改完成后,然后使用命令service docker restart重启一下docker服务,这时拉取镜像就很快了!

    此外,在提一下,有些公司只能通过代理出去拉取镜像的,这时的配置就需要另外在改改了,这时也是在docker的配置文件里面添加proxy的配置信息

    这里的IP需要改成自己公司的代理,同理需要重启一下docker服务。

    双击下载好的docker for windows.exe安装docker

    windows+r  >>>  cmd  >>>docker version

                    docker info

                    docker run hello-world

    镜像加速:

    阿里云  >>>  容器镜像服务  >>>  镜像加速器  >>>  专属加速器地址

    拷贝专属加速器地址https://xxx.mirror.aliyuncs.com(xxx不同用户地址不同)

    到右击桌面右下角docker图标  >>>  settings  

                   >>>  daemon  

                   >>>  registry mirrors:

                   >>>  apply

     检查加速器是否正确:

    cmd  >>>  docker info  >>>  查看输出Registry Mirrors:是否为https://xxx.mirror.aliyuncs.com

    切换docker到linux下:

    从docker库获取镜像到本地:

    docker pull [选项] [docker Registry地址] [端口号] [仓库名] [标签]

    docker pull --heip

     从这里找要下载的镜像:https://hub.docker.com/

    例如:

      docker pull training/webapp

      docker pull busybox

      docker pull centos

     列出本地镜像:

      docker image ls

      docker images

    删除镜像:

      docker image rm 镜像名称/镜像ID

    Docker 容器操作:

    查看容器:docker ps  查看运行中容器 

         docker ps -a 查看所有容器

    启动容器: 通过镜像创建一个容器并启动:

            docker run [OPTION] IMAGE [COMMAND] [ARG]

              COMMAND:容器启动后要执行的命令

              IPTION:

                -d  让docker后台运行

                -t   让docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入

                -i  让容器的标准输入保持开启

                --name  为容器命名

                -v  创建数据卷

                -p  指定端口

              本机访问docker(通过端口映射访问):

                docker run -p 本地端口:容器端口 docker镜像

                docker pull training/webapp

                docker run -p 8000:5000 training/webapp

                本机浏览器输入:localhost:8000 进行访问

                docker run -d -p 8001:5000 training/webapp (后台运行)

    容器的交互运行:

       docker run -t -i centos /bin/bash

    终止容器:

      docker stop 容器ID

    启动终止容器:

      docker start 容器ID

    重启容器:

      docker restart 容器ID

    删除容器:

      docker rm 容器ID

    获取容器输出信息:

      docker logs 容器ID

    进入容器:

      docker exec -i -t 容器ID /bin/bash

    主机和容器间的拷贝:

      容器拷贝到主机:  docker cp 容器ID:路径/文件名 本地路径

                docker cp 73de53e129f5:/opt/webapp/app.py c:/

      主机拷贝到容器:  docker cp 路径/文件名 容器ID:/路径/文件名

     数据卷:

      数据卷是一个可供多个容器使用的特殊目录,他绕过UFS可以提供很多特殊应用:

        可以在多容器间共享和使用;

        对数据卷的修改立马生效;

        对数据卷的更新不会影响镜像;

        数据卷默认一直存在,即使容器被删除!

        类似于Linux中的mount;

    数据卷命令:

      docker run -v 本地目录:容器目录 容器名称

      docker run -it --name volume-01 -v /vol-data centos /bin/bash

      从镜像创建数据卷目录 nolume-01 容器名称

                /vol-data  建立数据卷目录名

                centos   选用镜像名

      docker inspect 容器名

        查看Mount节点内容

    建立数据卷容器:

      docker run -it -v /dbdata --name data01 centos /bin/bash

             数据卷目录  容器名称  镜像名称

        启动容器:docker start data01

        进入容器:docker exec -it data01 /bin/bash

        加入文件:cd /dbdata

             touch db.properties

        退出数据卷容器:exit

    创建关联数据卷容器:

      docker run -it --name vol_a --volumes-from data01  centos /bin/bash

              容器名称 数据卷指向 数据卷容器名称 镜像名称

     删除volume:

      docker rm -v 数据卷容器名

      docker run --rm 创建容器时加--rm,那么当容器停止时会自动删除挂载的书记卷容器

    备份、恢复、迁移volume

    docker run --rm --volumes-from dbdata -v $(pwd):/backup test/mycentos:v1.0 tar cvf /back/data.tar /data

    制作云镜像:

      docker conmit -p(提交时容器暂停) -a "作者" -m"说明文字" 容器ID 镜像名字:版本

  • 相关阅读:
    Ubuntu 16.04配置vncviewer
    Ubuntu中可以卸载的软件(持续更新)
    MySQL入门常用命令
    数据库学习笔记(一)
    TensorFlow学习笔记(一)
    ubuntu安装deb包(dpkg)
    Linux中的bin文件夹
    常对象成员和常成员函数
    this指针
    对象成员指针
  • 原文地址:https://www.cnblogs.com/jackyzm/p/9166145.html
Copyright © 2020-2023  润新知