Docker(三)Docker的容器操作

容器就是运行起来的镜像。

一、运行容器

 命令docker run [参数] 镜像的标识|镜像名称[:tag]
Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
常用的参数 :

  -d:代表后台运行容器
  -p:宿主机端口:容器端口 为了映射当前的Linux的端口和容器的端口
  -name:容器名称:指定容器名称
  -i: 交互式操作
  -t: 终端。

如图所示,启动了一个ubuntu的容器,注意默认启动的为ubuntu:latest的镜像。没有会从仓库拉取。退出终端交互可以输入exit。

二、查看运行的容器

 命令docker ps [-qa]

  -a:查看全部的容器,包括没有运行
  -q:只查看容器得到的标识

三、查看容器的日志

 命令docker logs -f 容器id

  -f:可以滚动查看日志的最后几行

四、删除容器(删除容器前,需要先停止容器)

 命令docker stop 容器id//停止容器
 命令docker rm 容器id
docker stop $(docker ps -qa)//停止所有的容器
docker rm $(docker ps -qa)//删除所有的容器

五、启动停止的容器

 命令docker start 容器id//启动停止的容器

六、以守护模式运行容器。

 在运行时加-d(Deamonized)就可以使容器以守护态运行,可以理解为后台运行,sudo docker run -d 镜像
 当用sudo docker run -it 镜像 进入交互模式后,可以使用ctrl+P+Q使镜像后台运行。
那么后台运行的程序或者守护进程怎么进入容器内部做交互呢。

七、进入运行的容器内部

 当容器运行在后台时,我们可以使用docker attach 容器名来进入容器的交互模式。有意思的是,如果多人同时用着命令的话,那么大家会进入同一个终端,可以看到别人的操作,也可以助他一臂之力让他在输命令的时候总是多敲字母,以至于气到想砸键盘。
 嗯嗯!当然作为一个好人,全程闭眼玩家,我们是不能这么干的,我们要使用docker exec -it 容器名进入回话,当然在容器名后边也可以跟上交互的程序比如docker exec it 容器名 /bin/bash

八、拷贝数据,文件到容器内部

 数据交互肯定是少不了的,我们要想从宿主机拷贝文件到容器内可以执行
  docker cp /opt/test.txt [容器名]:/home//把宿主机/opt目录下的test.txt文件复制到容器的/home目录下
  [容器名]:/home/test.txt docker /tmp//把容器的/home目录下的test.txt复制到宿主机的 /tmp 目录下

九、查看容器的日志信息

  sudo docker logs 容器名

posted @ 2020-12-02 19:05  lxblog  阅读(173)  评论(0编辑  收藏  举报