欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

docker是干什么的,docker常用命令

程序员文章站 2022-04-21 10:12:11
...

镜像下载、域名解析、时间同步请点击 阿里云开源镜像站

一、百度百科

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖到一个可移植的镜像中,然后发布到任何流行的Linux或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

一个完成的docker有以下几个部分组成:

  • DockerClient 客户端
  • Docker Daemon 守护进程
  • Docker Image 镜像
  • Docker Container 容器

二、Docker安装

1、卸载Docker

  1. sudo yum remove docker \
  2. docker-client \
  3. docker-client-latest \
  4. docker-common \
  5. docker-latest \
  6. docker-latest-logrotate \
  7. docker-logrotate \
  8. docker-engine

2、需要的安装包

  1. yum install -y yum-utils

3、设置镜像仓库

  1. yum-config-manager \
  2. --add-repo \
  3. https://download.docker.com/linux/centos/docker-ce.repo

用国内的

  1. yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新软件包索引

  1. yum mackecache fast

4、安装Docker相关

ce社区版,ee企业版,推荐安装企业版

  1. yum install docker-ce docker-ce-cli containerd.io

docker是干什么的,docker常用命令

5、启动Docker

  1. systemctl start docker

6、使用docker version查看版本

docker是干什么的,docker常用命令

7、启动hello world镜像

  1. docker run hello-world

docker是干什么的,docker常用命令

8、卸载

  1. yum remove docker-ce docker-ce-cli containerd.io
  2. rm -rf /var/lib/docker
  3. rm -rf /var/lib/containerd

三、run的流程和docker原理

1、run的流程

docker是干什么的,docker常用命令

2、docker原理

docker是干什么的,docker常用命令

3、docker为何比VM快?

  • Docker有着比虚拟机更少的抽象层
  • docker利用的是宿主机的内核,VM需要的是Guest OS。
    docker是干什么的,docker常用命令

四、Docker镜像常用命令

1、基本命令

docker version

docker info

docker 命令 —help #万能命令

docker images

docker是干什么的,docker常用命令

解释:

  • REPOSITORY:镜像的仓库源
  • TAG:镜像的标签
  • IMAGE ID:镜像的ID
  • CREATE:镜像的创建时间
  • SIZE:镜像的大小

可选项

-a:列出全部的镜像

-q:只显示镜像的ID

2、搜索镜像

docker search

可选项

—filter-STATUS-3000 #搜索大于3000的

3、下载镜像

指定版本下载

docker pull 镜像名[:tag]

docker是干什么的,docker常用命令

4、删除镜像

  1. docker rmi -f 镜像id

五、docker容器常用命令

1、下载容器

docker pull centos

2、docker run [可选参数] image

参数说明:

  • —name 容器名称
  • -d 后台方式运行
  • -it 使用交互方式运行,进入容器查看内容(例如:docker run -it centos /bin/bash)
  • -p 指定容器的端口号 -p 8080:8080(主机端口:容器端口)

3、列出所有的运行的容器

docker ps [参数]

  • -a 列出当前正在运行的容器
  • -n 显示最近创建的容器
  • -q 只显示容器的编号

例如:docker ps -aq 显示当前正在运行的容器的编号

4、退出容器

  1. exit

5、删除容器

  • docker rm 容器id 不能删除正在运行的容器
  • docker rm -f $(docker ps -a) 删除所有的容器
  • docker ps -a -q|xargs docker rm 删除所有的容器

6、启动和停止容器

  • docker start 容器id
  • docker restart 容器id
  • docker stop 容器id
  • docker kill 容器id 强制停止

7、进入当前正在运行的容器

  • 方式一:docker exec -it 容器id /bin/bash 进入容器后开启一个新的终端(常用)

  • 方式二:docker attach 容器id 进入容器当前正在执行的终端

8、从容器内拷贝文件到主机

docker cp 容器id:容器内路径 主机路径

例如:docker cp 容器id:/home/test.java /home

9、其它常用命令

(1)后台启动容器 -d

(2)查看日志命令

docker logs —help

显示指定行数的日志:

docker logs -tf —tail 10 容器id

-f:内容,,,-t:时间

例如:循环执行

docker run -d centos /bin/sh -c “while;do echo hello world;sleep 1;done”

(3)显示容器中的进行信息

查看docker内部的进程信息:docker top 容器id

(4)查看容器的元数据

docker inspect —help

显示容器的所有信息:

docker inspect 容器id

docker是干什么的,docker常用命令

本文转自:https://blog.csdn.net/guorui_java/article/details/115874500