docker-使用

Posted huxl1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker-使用相关的知识,希望对你有一定的参考价值。

Docker是对lxc与cgroups 连接起来,做了一个二次封装,从而使容器用法更加简便

现在用Libcontainer-----runc  的容器运行环境

OCI :容器格式和运行时指定的一个开放的工业标准

OCF :开放容器格式

Runc:是一个运行,是基于libcontainter的容器管理器

Docker采用镜像形式来启动容器,

 仓库:存放镜像的

索引:registry 用于找到镜像

Docker有docker  daemon  (docker守护进程) 和registry (镜像库),docker  run(客户端工具)三个组件

技术分享图片

Hub.Docker  :公共仓库有多个docker提供的镜像和其他人存放的镜像

Hub.docker.com   站点

Images镜像是只读的而且 是分层构建,联合挂载

安装

依赖环境:

 1 64位cpu

 2 依赖3.10以后的版本

 3 内核启用 cgroups  namespace

Centos7  配置好extras  repository  (仓库)

技术分享图片

安装:yum  install  docker

修改配置文件/etc/sysconfig//docker

1 修改仓库地址,默认是docker官方自己的

ADD _REGISTRY= ‘ –add-registry  registry.magedu.com’   如自己私有仓库

INSECURE_REGISTRY= ‘ –insecure-registry’  允许使用非安全仓库

BLOCK_REGISTRY= ‘—block-registry   docker.io’   阻断对docker仓库的访问

Systemctl  start   docker.service   启动服务

列出本地有的镜像:docker  images

从仓库中搜需要的镜像: docker  search  busybox

下载镜像到本地:docker  pull  docker.io/busybox

技术分享图片

安装docker 会默认创建一个docker0这个桥, 这是基于nat的在iptables  -A nat  -Lnv  可以看到

技术分享图片

默认它开启dhcp功能

创建一个容器

docker run --name bbox1 -it --rm docker.io/busybox   

  --rm  容器运行结束后自动删除

  -t   开启终端 

  -i   交互

技术分享图片

查看容器是否运行: docker  ps

退出终端 ctrl+p  再 ctrl+q

#docker  run   --name  c1  -it    centos     创建centos

 

Docker组件

物理:

Client-----daemon-----registry  server

逻辑

Containers   容器 

Images   镜像

Registry   仓库

 

Docker  命令进行交互操作  参考 docs.docker.com 

docker  info  查看主机信息

docker version  版本信息

docker  images  列出镜像

docker  rmi   镜像   删除镜像

docker  pull   镜像    下载镜像

docker  run   创建并运行容器

docker  create  创建容器

docker  start    镜像名    启动容器

docker  stop   镜像名     停止容器

docker   ps             查看容器运行状态

docker  paused  ---    暂停容器

docker  unpause  --    继续运行容器

docker   rm  --        删除容器

在docker上一个容器仅运行一个程序,容器内部有必须一个工作在前台的进程

要想在容器内运行多各个程序,一般需要提供一个管控程序,如supervised

 

Doacker  attach   c1  进入终端

Docker  Exec  c1  ifconfig    在哪个运行中的容器运行哪个命令

 Docker  logs  c1    查看命令历史和曾经容器内的输出信息    

 docker  stats   c1   容器资源消耗显示 动态

docker   top  c1   容器内部正运行的命令

 

以上是关于docker-使用的主要内容,如果未能解决你的问题,请参考以下文章

docker使用docker使用随笔

使用 docker 如何使用 docker run 将文件从 docker 复制到主机 [重复]

[Docker] docker-compose使用教程

云原生之Docker实战使用docker部署webssh工具

docker运行Spring Cloud使用外部IP

容器安全之不使用Docker的默认网桥docker0