zoukankan      html  css  js  c++  java
  • docker---基本操作

      摘要:今天就简单记录一下 docker 的基本命令,因为刚学习 docker ,平时用的时候可能记不清楚,还需要去查找,这次就记录一下常见的 docker 使用命令,以后会逐渐增加。

    启动容器

      启动容器有两种方式,一种是基于镜像新建一个容器并启动,另外一个是将在终止状态(stopped)的容器重新启动。因为 Docker 的容器实在是太轻量级了,很多时候用户都是随时删除和新建容器。

    1,新建并启动:docker run

    # 新建并启动容器
    $ docker run ubuntu:18.04 /bin/echo 'Hello world'
    
    # 启动一个 bash 终端,允许用户进行交互
    # -i 让容器的标准输入保持打开
    # -t 让 Docker 分配一个伪终端(pseudo-tty),并绑定到容器的标准输入上
    $ docker run -i -t ubuntu:18.04 /bin/bash

    2,启动已终止容器:docker container start

    # 启动已终止容器
    $ docker container start ubuntu:18.04

    3,后台运行: 使用 -d 参数

    # 未使用 -d 参数
    # 会把输出的结果(STDOUT)输出到宿主机上面
    $ docker run ubuntu:18.04 /bin/sh -c "while true;do echo hello world; sleep 1s; done"
    
    # -d 参数实现后台运行 
    # 返回一个唯一的 id,可通过该 id 进行查看后台输出内容
    $ docker run -d ubuntu:18.04 /bin/sh -c "while true;do echo hello world; sleep 1s; done"
    
    # 查看后台输出内容
    $ docker container logs [container ID or NAMES]

    终止容器

      终止容器可以用 docker container stop 来终止一个运行中的容器,此外,当 Docker 容器指定的应用终结时,容器也自动终止

    # 终止一个运行中的容器
    $ docker container stop ubuntu:18.04
    
    # 查看所有终止的容器
    $ docker container ls -a
    
    # 重新启动容器
    $ docker container restart ubuntu:18.04

    进入容器

      在使用 -d 参数时,容器启动后会进入后台运行,某些时候我们需要进入容器操作,包括使用 docker attach 命令或 docker exec 命令,推荐使用 docker exec 命令。

    1,attach 方式进入容器:

    # 后台启动一个容器
    $ docker run -dit ubuntu
    
    # 进入这个容器
    # attach 进入容器,一旦从 stdin 中 exit,会导致容器的停止
    $ docker attach container_ID

    2,exec 方式进入容器:

    # 进入这个容器
    # exec 后面可以跟多个参数,这里主要用 -i -t
    # 更多参数可以使用 docker exec --help 进行查看
    # 如果从这个 stdin 中 exit,不会导致容器的停止(推荐使用这个方式的原因)
    $ docker exec
    -it container_ID bash

    导出和导入容器

    1,导出容器:

    # 导出容器快照到本地
    $ docker export container_ID > ubuntu.tar

    2,导入容器为镜像:

    # 导出容器快照为镜像
    $ cat ubuntu.tar | docker import - ubuntu:v1.0

    删除容器

    1,清理某一个容器

    # 清理某一个容器
    $ docker container rm container_ID

    2,清理所有处于终止状态的容器

    # 查看所有容器,包括处于终止状态的容器
    $ docker container ls -a
    # 清理所有处于终止状态的容器
    $ docker container prune
    所有博文均为原著,如若转载,请注明出处!
  • 相关阅读:
    docker常用命令
    2020/10/10,饮食男女-对教条主义的补充和现实的摸索
    2020/08/24,约束力
    2020/08/21,迷茫的时候就去工作
    2020/08/21,神秘和平易近人
    2020/08/21,圣人和教条
    2020/07/21,翡翠梦境
    2020/10/10,生活不是阶段式跳跃的,是螺旋式的。
    2020/07/23,再论point,way,moment,time
    2020/07/13,旅游的意义是什么
  • 原文地址:https://www.cnblogs.com/zpcoding/p/11503395.html
Copyright © 2011-2022 走看看