• Docker 安装与常用命令介绍


    docker的镜像文件作用就是:提供container运行的文件系统层级关系(基于AUFS实现),所依赖的库文件、已经配置文件等等。

    • 安装docker
    yum install -y docker
    • 启动docker
    systemctl start docker
    • 获取docker使用帮助
    docker --help
    • 获取centos 镜像
    1:查看
    docker search centos
     
    2:获取
    docker pull centos
    • 获取busybox镜像
    1:查看
    docker search busybox
     
    2:获取
    docker pull busybox
    • 查看本地镜像
    [root@7 ~]# docker images
    REPOSITORY TAG IMAGE ID CREATED SIZE
    docker.io/busybox latest 54511612f1c4 4 weeks ago 1.129 MB
    • 运行镜像文件,启动一个虚拟用户空间也就是虚拟container
    1:使用docker run命令运行一个镜像文件
     
     
    2:docker run命令的使用格式
    docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
     
     
    3:运行centos镜像文件,运行/bin/bash命令
    docker run -it -h uplooking centos:latest /bin/bash(kill的时候不会删除容器,-h 指定容器的主机名)
    docker run -it --rm centos:latest /bin/bash(kill的时候会删除容器,以及删除volume)
     
    ①:登入到centos容器,先安装net-tools,会发现有IP,且网络连接模型为NAT模型
    ②:在宿主机上,执行ifconfig命令,可以看到多了一个docker0的NAT桥,和一个vethbf0e0dd的虚拟网卡设备,可以使用 brctl show 命令查看
    ③:删除或停止一个container
    docker kill containerID号(docker ps 可以查看到每一个container的ID号)
    注意:但是此容器并没有删除,而是停止了,可以使用docker ps -a命令看到容器依然存在。可以使用docker rm containerID号删除
     
     
    4:查看docker运行的容器
    docker ps
    • Docker常用命令介绍
    容器生命周期管理 — docker [run|start|stop|restart|kill|rm|pause|unpause]
    容器运行系统参数 — docker [ps|inspect|top|attach|events|logs|wait|export|port]
    容器rootfs管理 — docker [commit|cp|diff]
    镜像仓库管理 — docker [login|pull|push|search]
    本地镜像管理 — docker [images|rmi|tag|build|history|save|import]
    运行环境参数 — docker [info|version]
     
    1:列出机器上的镜像
    docker images
     
    2:在docker中搜索可用镜像
    docker search centos
     
    3:从docker registry 中下拉镜像或repository
    # 拉取最新版本的centos镜像
    docker pull centos
    # 拉取指定版本的centos镜像
    docker pull centos:centos6
     
    4:从image启动一个container,-m 指明最大的内存使用率,--cpuset-cpus 指明只能使用哪些CPU
    docker run -it -m 64MB --cpuset-cpus 0 centos:latest /bin/bash
     
    5:删除或停止一个container
    docker kill 72ce30263126
    docker rm 72ce30263126
     
    6:将一个container固化为一个新的image,其中0e9a810a29a5为容器的id号,此时容器正在运行
    docker commit 0e9a810a29a5 helllo:yhy
     
    7:登入dockerhub(需要先注册https://hub.docker.com)
    docker login
     
    8:推送一个镜像或repository到registry
    docker tag centos yhyblog/centos:7.2 (必须先给镜像打标签,在推送)
    docker push yhyblog/centos (再推送)
     
    docker tag helllo:yhy yhyblog/centos:hello (使用带版本号的镜像,给远端仓库先打标签)
    docker push yhyblog/centos:hello (再推送)
     
    9:删除本地docker镜像
    docker rmi 镜像ID号
    例如:docker rmi 4b90b5603d01
     
    10:启动容器
    ①:创建一个新容器,且启动,-d表示后台运行,--name给容器取名,
    docker run -d hub.c.163.com/public/lamp:latest
    docker stop 9ef19b288a4c(也可以使用容器的名字停止容器)
    ②:启动一个停止的容器
    docker start 9ef19b288a4c
     
    11:连接到这个正在运行的终端
    docker attach 9ef19b288a4c
     
    12:在容器外查看容器输出的信息
    docker logs 9ef19b288a4c
     
    13:查看容器状态信息,uplooking-home为容器的名称
    docker stats uplooking-home
     
    14:查看容器的详细信息,-f 指明获取这个键对应的值,Name是一个键
    docker inspect -f {{.Name}} uplooking
     
    13:Docker 容器支持的网络模型
    ①:bridge 模型(其实这是NAT模型,因为bridge0是nat桥)
    ②:host 模型(使用宿主机的网络名称空间)
    ③:container 模型(类似与隔离模型)
    ④:none 模型(不配置网络)
  • 相关阅读:
    System V 消息队列
    《APUE》读书笔记第十五章进程间通信
    感冒休息
    《APUE》读书笔记—第十一章线程
    消息队列和管道的区别(转载)
    《APUE》读书笔记第十八章终端I/O
    《APUE》读书笔记第十九章伪终端
    《APUE》读书笔记第十六章网络IPC:套接字
    [转]阿里要走102年,阿里的工程师能走多远呢?
    Posix消息队列
  • 原文地址:https://www.cnblogs.com/liu1026/p/7768679.html
Copyright © 2020-2023  润新知