zoukankan      html  css  js  c++  java
  • 《Docker技术入门与实践》Docker入门

    官方文档

    1.安装

    ubuntu:
    apt-get update
    
    apt-get install -y docker.io
    
    ln -sf /usr/bin/docker.io /usr/local/bin/docker
    
    sed -i "$acomplete -F _docker docker' /etc/bash_completion.d/docker.io
    
    或者
    
    apt-get install -y lxc-docker
    
    
    centos:
    #建议直接使用centos7
    docker install -y docker
    

    2.获取镜像

    sudo docker pull ubuntu:14.01
    sudo docker pull dl.dockerpool.com:5000/ubuntu
    
    利用镜像创建容器
    docker run -t -i ubuntu /bin/bash
    查看本地镜像
    docker images
    删除本地镜像
    docker rmi $image_id
    为镜像打标签
    docker tag dl.dockerpool.com:5000/ubuntu:latest ubuntu:latest
    获取镜像详细信息
    docker inspect $image_id
    

    3.镜像

    寻找镜像
    docker search $image_name

    1. 基于已有镜像创建镜像

       docker commit  [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
      

      1.1 基于本地模板导入

       sudo cat ubuntu_14.04.tar  |docker import  -u ubuntu:14.0
      

      1.2 导出

       docker export $image_id >ubuntu_14.04.tar
      
    2. 存入和载出镜像

       docker save -o xx.tar $repository:$tag   
       docker load --input ubuntu_14.04.tar
       docker load < ubuntu_14.04.tar
      
    3. 上传镜像

       sudo docker tag test:latest user/test:latest
       sudo docker push usr/test:latest
      

      在这里插入图片描述

    4.容器

    1. 创建容器

       sudo docker create -it ubuntu:latest
      

      创建后处于停止状态,可以使用docker start $container_id 来启动
      docker run = docker create + docker start
      推荐使用run 每次开启一个新的容器。
      eg: docker run ubuntu /bin/echo “Hello World”

      在这里插入图片描述
      -t 分配一个伪终端(pseudo-tty)
      -i 让容器的标准输入打开
      ctrl +d 或者 exit退出容器。 注意,退出后 容器也停止了。
      守护运行
      -d 守护状态

    在这里插入图片描述

    1. 终止容器
      docker stop $container_name
      可以再使用docker start $container_name来启动
      重启容器
      docker restart $container_name

    2. 进入容器
      docker attach $container_name
      这里attach command, 如果command 不是/bin/bash 也进入不了容器
      在这里插入图片描述

      docker exec -ti $container_name /bin/bash
      在这里插入图片描述

      查看容器进程

       docker inspect --format "{{.State.Pid}}" $container_id
      

      在这里插入图片描述

    3. 删除容器

       docker rm $container_id
      

      注意验证 grep的精确性,否则会误删

      docker rm $((docker ps -a )|grep xx| awk '{printf "%s
      ",$1}')
      ps -a  |grep xx | awk '{printf "%s
      ",$1}'  | xargs  -i  docker rm  {}
      
    4. 导入导出容器
      docker ps -a
      导出
      docker export $container_name >xx.tar
      导入
      cat xx.tar |sudo docker import test/xx:v1.0

    5.仓库

    1. Docker Hub
      登陆
      docker login

      从私有下载镜像
      docker pull my.com:5000/ubuntu:12.04

      更新镜像标签
      docker tag my.com:5000/ubuntu:12.04 ubuntu:12.05

    2. 创建私有仓库
      通过registry镜像来搭建

           sudo docker run -d -p 5000:5000 registry
      

      运行镜像,将上环的镜像放在/var/data/registry目录(默认在/tmp/registry下)

         sudo docker run -d -p 5000:5000 -v /var/data/registry:/tmp/registry registry
      

      查看仓库

          curl http://localhost:5000/v2/_catalog
      

      打标签并推送到私有仓库

           docker tag member:v1 127.0.0.1:5000/member
           docker push 127.0.0.1:5000/member
      

    在这里插入图片描述

    使用任意一台机器访问下载镜像
    这里如果不指定端口会默认下载https

        docker pull my.com:5000/$container_id:$version
    

    在这里插入图片描述

  • 相关阅读:
    Asc函数与Chr函数
    IsNumeric 函数
    VB之Collection---Collection集合类
    [转]android.support.v4.app.Fragment和android.app.Fragment区别
    【原创】LogCat信息演示Activity生命周期
    [转]基础总结篇之一:Activity生命周期
    [转]两分钟彻底让你明白Android Activity生命周期(图文)
    [转]Android Studio常用快捷键
    [转] Android 命名规范 (提高代码可以读性)
    [转]Android ListView最佳处理方式,ListView拖动防重复数据显示,单击响应子控件
  • 原文地址:https://www.cnblogs.com/thewindkee/p/12873148.html
Copyright © 2011-2022 走看看