• Docker命令学习


    1.docker images -a 查看所有镜像
    2.docker info 查看container和images的信息
    3.docker run --name znidocker -i -t debian /bin/bash 创建并启动一个包含debian镜像的容器,启动后执行/bin/bash命令。--name指定容器名称。如果需要使用容器的指定端口,则需要加参数-p {port}
    4.docker ps -a 查看当前系统中所有容器列表(包括正在运行和已经停止的)。不加-a则只显示正在运行的容器。
    5.docker rm {container_id|container_name} 都可以删除容器
    6.docker start {container_id|container_name} 启动已停止的容器
    7.docker restart {container_id|container_name} 重启容器
    8.在容器内部执行exit正常退出容器
    9.docker stop {container_id|container_name} 停止容器
    10.docker create --name znidocker2 -i -t debian /bin/bash 创建一个容器,但是不运行。
    11.docker attach {container_id|container_name} 启动容器后,通过该命令 重启附着到容器上,进入容器运行的shell命令行交互界面
    12.区别前面的交互式容器,现在创建一个守护式容器:

    docker run --name daemon_dave -d debian /bin/sh -c "while true; do echo hello world; sleep 1; done"
    

    其中-d表示让Docker将容器放到后台执行
    13.docker logs {container_name} 获取守护式进程的日志。

    -f 持续打印,类似tail -f。 CRTL+C退出日志跟踪
    -t 为每条日志项加上时间戳
    --tail 10 打印最后10条日志
    示例: docker logs -ft --tail 5 daemon_dave

    root@hzbxs-azkaban-6:~# docker logs -ft --tail 5 daemon_dave
    2017-08-06T09:24:08.497031769Z hello world
    2017-08-06T09:24:09.498143397Z hello world
    2017-08-06T09:24:10.499094786Z hello world
    2017-08-06T09:24:11.500347756Z hello world
    2017-08-06T09:24:12.501285402Z hello world
    2017-08-06T09:24:13.502651354Z hello world
    

    14.docker top {container_id|container_name} 查看容器内的所有进程

    root@hzbxs-azkaban-6:~# docker top daemon_dave
    UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
    root                22314               22297               0                   17:19               ?                   00:00:00            /bin/sh -c while true; do echo hello world; sleep 1; done
    root                23061               22314               0                   17:27               ?                   00:00:00            sleep 1
    

    15.docker stat {container_name1} {container_name2} 查看一个或多个容器内的资源使用情况(cpu,内存,网络I/O,存储I/O等)

    root@hzbxs-azkaban-6:~# docker stats daemon_dave nifty_wescoff
    CONTAINER           CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
    daemon_dave         0.09%               356KiB / 11.76GiB     0.00%               468B / 0B           2.03MB / 0B         0
    nifty_wescoff       0.03%               4.121MiB / 11.76GiB   0.03%               5.31MB / 746kB      17MB / 438kB        0
    

    16.docker exec -d {container_name} {command} 在容器内运行一个后台进程
    17.docker exec -t -i {container_name} /bin/bash 在容器内创建一个新的bash会话,有了这个会话就可以在容器中运行其它命令了。
    18.docker run --restart=on-failure:5 --name {container_name} -d debian /bin/bash 创建一个失败(退出码不为0)会自动重启的容器,最多重启次数为5。设置--restart=always则无论容器退出码是什么,都自动重启。
    19.docker inspect {container_name|image_name} 获取容器或镜像的详细信息
    20.docker rm `docker ps -a -q` 一次性删除所有容器
    21.docker pull ubuntu:12.04 拉取ubuntu的tag为12.04的镜像
    22.docker search {image_name} 搜索Docker Hub上公共的可用镜像
    23.docker commit -m"{message}" -a"{author}" {container_id} {username}/{repo_name}:{tag_name} 提交镜像。如:

    docker commit -m"My first image" -a"zni.feng" znidocker zni.feng/apache2:webserver
    

    24.docker tag Registry/Repos:Tag New_Registry/New_Repos:New_Tag 给镜像打上新的tag
    25.docker tag {image_id} New_Registry/New_Repos:New_Tag 合并同一个image的所有tag
    26.docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH 容器与主机之间的数据拷贝
    下面三条分别是:将主机/www/runoob目录拷贝到容器96f7f14e99ab的/www目录下;将主机/www/runoob目录拷贝到容器96f7f14e99ab中,目录重命名为www;将容器96f7f14e99ab的/www目录拷贝到主机的/tmp目录中。

    docker cp /www/runoob 96f7f14e99ab:/www/
    docker cp /www/runoob 96f7f14e99ab:/www
    docker cp  96f7f14e99ab:/www /tmp/
    

    27.docker port {container_name} 获取指定容器的端口映射
    28.docker diff {container_name} 查看容器内的文件结构更改
    29.docker history {image_name} 查看镜像的具体构建过程
    30.docker rmi {image_name} 删除镜像
    31.docker tag {image_id} {hostname}}:{port} {image_name}
    32.docker push {image_name} 推送镜像到Registry
    33.docker export {containerid} >/home/hadoop/zni_docker.tar 将容器导出成tar包形式
    34.docker import /home/hadoop/zni_docker.tar {image_name}:{version}将容器导入
    35.docker save {imageid} > /home/hadoop/zni_docker.tar 或 docker save -o /home/hadoop/zni_docker.tar {imageid}保存镜像
    36.docker load < /home/hadoop/zni_docker.tar 载入镜像

  • 相关阅读:
    DUDU,发回密码或者登陆系统一定有问题
    柱状图改进版
    辞职了......
    (转)密码学领域重大发现:山东大学王小云教授成功破解MD5
    用C# and GDI+画柱状图(可以从数据库里导出数据画)
    今天,在苏州落户了.
    在Windows2000Server(CPUP4)系统下安装Oracle时一点小问题
    毕业后,两个月,第二家公司上班第一天
    Ubuntu10.04窗口风格改为windows风格的方法
    MYSQL修改密码并设置允许远程访问
  • 原文地址:https://www.cnblogs.com/znicy/p/7296276.html
Copyright © 2020-2023  润新知