• docker 基础操作


    1.搜索docker镜像

    docker search centos   # centos 为镜像名称
    

    2.下载镜像

    docker pull centos   # centos 下载镜像
    

    3.查看镜像

    docker images
    

    4.删除镜像

    docker rmi 镜像id
    docker rmi -f(强制删除) 镜像id
    sudo docker rm $(sudo docker ps -a -q)
    sudo docker rm -f $(sudo docker ps -a -q)

    5.启动容器

    docker run -d(后台运行) --name test(指定启动容器名称) --rm(提出自动删除) -it(-i终端保存打开状态 -t让docker分配一个伪终端并绑定到容器的标准输入上) -p 91(外部访问的端口):80(内部映射端口) -P(随机映射端口) -h(指定主机名称) centos -v(创建数据卷)  /data --link centos1(容器互联)
    centos /bin/bash
    
    -d            :后台运行
    -i            :终端保存打开状态
    -p            :91(外部访问的端口):80(内部映射端口
    -P            :随机映射端口
    -h            :指定主机名称
    -v            :创建数据卷
    -t            :让docker分配一个伪终端并绑定到容器的标准输入上
    -e            :设置环境变量
    --name        :指定启动容器名称
    --rm          :提出自动删除
    --link        :容器互联
    --network     :指定连接的网络
    

      

      

    6.停止和启动已经停止的容器

    # 停止容器
    docker stop 容器id
    # 启动停止的容器
    docker container start 容器id
    # 重启容器
    docker container restart 容器id
    # 暂停容器
    docker pause 容器id
    # 启动暂停容器
    docker unpause 容器id

     

    7.删除容器

    docker rm -f(强制删除  如果要删除没有停止的容器可以用 -f) 容器id
    #清除所有已经停止的容器
    docker container prune

    8.查看容器

    docker ps -a
    docker ps -l #查看最后一个运行的容器

    9.获取容器的pid

    docker inspect --format "{{.State.Pid}}" 容器id(容器名称)
    

    10.进入容器

    nsenter --target 容器pid --mount --uts --ipc --net --pid
    
    如果没有nsenter 命令   sudo yum install -y util-linux
    或
    sudo docker exec -it 容器id /bin/bash
    或
    sudo docker attach 容器id 
    
    退出容器
    ctrl+d

    11.bash: ip command not found centos

    yum -y install initscripts
    apt-get install initscripts

    12.端口映射

    docker run -P(随机映射端口) -d(后台) --name mynaginx nginx
    docker run -p 91(外部访问的端口):80(内部映射端口) -d --name mycentos centos

    13.数据卷

    docker run -it -d --name mycentos -h(指定主机名称) centos -v(创建数据卷)  /data centos
    
    查看数据卷信息 sudo docker inspect bc8e | grep Source
    
    # 创建数据卷
    docker volume create my-vol(数据卷名称)
    # 查看已有的数据卷
    docker volume ls
    #查看数据卷信息
    docker volume inspect my-vol(数据卷名称)
    # 删除数据卷
    docker volume rm my-vol(数据卷名称)

      

     14.导入导出容器

    # 导出容器
    docker export 7691a814370e(容器id) > centos(导出的文件名称)
    # 导入容器
    cat centos(导入文件的名称) | docker import - test/ubuntu:v1.0(镜像名称)
    

    15.取消docker命令前的sudo

    sudo groupadd docker   # 创建新的用户组
    
    sudo gpasswd -a vagrant docker     # 将vagrant加入到docker组中
    
    sudo service docker restart  # 重启docker服务
    
    exit    # 退出
    
    vagrant ssh    # 重新登入
    

      

      

  • 相关阅读:
    通过加载Xib文件来创建UITableViewCell造成复用数据混乱问题方案
    iOS开发过程中常见错误问题及解决方案
    iOS开发常用第三方库
    KVC和KVO的理解(底层实现原理)
    iOS面试必备-iOS基础知识
    iOS应用适配IPV6
    Runtime运行时的那点事儿
    iOS应用性能调优的25个建议和技巧
    iOS清除缓存功能开发
    微信浏览器跳转页面后再返回,如何恢复到跳转前的位置的问题。
  • 原文地址:https://www.cnblogs.com/yoyo1216/p/10875942.html
Copyright © 2020-2023  润新知