博客列表 >docker是干什么的,docker常用命令

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

哈
原创
2022年01月17日 10:56:24854浏览

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

一、百度百科

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

file

5、启动Docker

  1. systemctl start docker

6、使用docker version查看版本

file

7、启动hello world镜像

  1. docker run hello-world

file

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的流程

file

2、docker原理

file

3、docker为何比VM快?

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

四、Docker镜像常用命令

1、基本命令

docker version

docker info

docker 命令 —help #万能命令

docker images

file

解释:

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

可选项

-a:列出全部的镜像

-q:只显示镜像的ID

2、搜索镜像

docker search

可选项

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

3、下载镜像

指定版本下载

docker pull 镜像名[:tag]

file

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

file

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

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议