docker基础之常用命令

docker简介

docker是什么

可以将docker容器理解为一个轻量级的沙盒。每个容器内运行着一个应用,不同的容器相互隔离,容器之间也可以通过网络互相通信。容器的创建和停止十分快速,容器自身对系统资源的额外需求也十分有限,远远低于传统虚拟机。

为什么要使用docker

  1. 更快速的交付和部署。
  2. 更高效的资源利用。
  3. 更轻松的迁移和扩展。
  4. 更简单的更新管理。

image-20200217160320284

image-20200217160631107

传统方式是在硬件层面实现虚拟化,需要有额外的虚拟机管理应用和虚拟机操作系统层。Docker容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,因此更加轻量级。

核心概念

镜像

Docker镜像类似于虚拟机镜像,可以将它理解为一个只读的模板。镜像是创建Docker容器的基础。

例如,一个镜像包含一个基本的操作系统环境,里面仅安装了Apache应用程序,则可以把它称为一个Apache镜像。

容器

Docker容器类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用。

容器是从镜像创建的应用运行实例。它可以启动,开始,停止,删除,而这些容器都是彼此相互隔离,互不可见的。

仓库

Docker仓库类似于代码仓库,是Docker集中存放镜像文件的场所。

Docker命令

镜像

获取镜像:docker pull

docker pull 镜像名称:标签

image-20200217162127066

image-20200217162146281

查看镜像信息

列出所有镜像:docker images

docker images 或 docker image ls

image-20200217162425799

添加镜像标签:docker tag

使用tag命令添加镜像标签 docker tag

image-20200217162712116

查看镜像详细信息:docker inspect

docker inspect 镜像id

image-20200217163040349

image-20200217163055352

查看镜像历史:docker history

image-20200217163142507

搜寻镜像:docker search

docker search mysql

删除镜像:docker rm

docker rmi 镜像id 或 docker image rm 镜像id

image-20200217163501000

清理镜像:docker prune

docker image prune

image-20200217163827152

image-20200217163811155

上传镜像:docker push

docker push 镜像名称:标签

image-20200217164049768

帮助指令:docker image help

容器

创建容器 docker create

docker create -it 镜像名称:标签

使用create命令新建的容器处于停止状态,可以使用docker start命令来启动它

image-20200217165343980

image-20200217170253277

image-20200217170316273

image-20200217170331628

image-20200217170351204

启动容器 docker start

将停止状态的容器重新启动
docker start 容器id

docker restart 容器id 先将一个运行态的容器先终止,然后再重新启动

查看容器 docker ps

docker ps

查看所有容器的id
docker ps -qa

新建并启动容器 docker run

docker run -it ubuntu:18.04 /bin/bash

-t:让docker分配一个伪终端,并绑定到容器的标准输入上。

-i:则让容器的标准输入保持打开

更多命令选项可以通过man docker-run来查看

进入容器内部后,可以通过Ctrl+d或者输入exit命令来退出容器

当用户使用exit命令退出bash进程之后,容器也会自动退出。

-d:可以通过添加-d参数来容器在后台以守护态形式运行

查看容器输出 docker logs

image-20200217170553523

停止容器 docker pause、stop、prune

暂停容器
docker pause 容器id
恢复容器
docker unpause 容器id

终止容器
docker stop 容器id

此时执行 docker container prune 会自动清除掉所有处于停止状态的容器

处于停止状态的容器,可以通过docker start命令来重新启动

进入容器 docker attach/exec

  1. attach
attach是Docker自带的命令
docker attach 容器id

使用attach有时候并不方便,当多个窗口同时attach到同一个容器的时候,所有的窗口都会同步显示,当某个窗口因命令阻塞时,其他窗口也无法执行操作了。

  1. exec

    docker exec -it 容器id /bin/bash
    

image-20200217171515480
image-20200217171556932

删除容器 docker rm

docker rm 容器id

image-20200217171725181

image-20200217171745968

查看容器 docker inspect、top、stats

  1. 查看容器详情:inspect
docker container inspect 容器id

image-20200217172520319

  1. 查看容器内进程:top
docker top 容器id

image-20200217172544867

  1. 查看统计信息:stats
docker stats

image-20200217172645199

其他容器命令: cp、port

  1. 复制文件:cp

container cp命令支持在容器和主机之间复制文件。

将本地的路径data复制到test容器的/tmp路径下:
docker cp data test:/tmp/

image-20200217173126430

  1. 查看端口映射:port
docker container port 容器id

image-20200217173209173

  1. 帮助命令:docker container help

docker容器中安装Vim命令

apt-get update

这个命令的作用是:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。
 
apt-get install vim
发布了47 篇原创文章 · 获赞 16 · 访问量 3425

猜你喜欢

转载自blog.csdn.net/kaihuishang666/article/details/104364349