docker 简单原理及相关命令(镜像拉取 删除 执行容器 进入容器)

docker 前生:

  linux container lxc 是docker 之前底层就是使用的东西,

  chroot 也是容器使用的前生

我们的docker呢就是一款流行的容器工具,也是cs架构

docker是内核级的虚拟化,通过cgroup 以及namespace来实现资源的隔离。

docker 的安装

准备工作

rm -fr /etc/yum.repos.d/local.repo

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo

sed -i 's#download.docker.com#mirrors.tuna.tsinghua.edu.cn/docker-ce#g' /etc/yum.repos.d/docker-ce.repo 换清华园

yum install docker-ce  -y

设置开机启动

systemctl start docker

systemctl enable docker

docker 的三大组件

镜像 容器 仓库

docker 运行一个nginx容器,默认走的是最新版本

docker -it -p 80:80 nginx:latest

  -d 是deamon 守护进程

  -p 是端口映射

vi /etc/docker/daemon.json

{ "registry-mirrors": ["https://registry.docker-cn.com"] }

systemctl restart docker

 

docker 镜像查询

docker search nginx

拉取镜像

docker pull centos:6.8

查看镜像

  docker images

REPOSITORY       TAG IMAGEID   CREATED SIZE

docker.io/gitlab/gitlab-ce   lastest  3cc8e8a0764d         2.04G

删除镜像

docker image rm centos:6.8

导入加载镜像:一般从私有仓库里面导入

  docker load -i docker-centos7.5.tar.gz

 

运行一个容器:

  docker run  -d -p 80:80 nginx:lastest

  run  执行容器

  -d deamon

  -p 端口映射

  docker run -it --name centos6 centos:6.9 /bin/bash 能直接进入到镜像 的bash中,注意容器是有生命周期的,需要hang在哪里容器才能存活,若是不夯筑容器的生命周期就结束了。

  -it 分配交互式的终端 terminal interface

  --name 指定运行容器的名字

  /bin/bash 覆盖容器的初识命令

  --cpus 指定cpu的数量

  --memory 限定内存的大小

  -h    指定容器的主机名

 

容器的排错调试

  docker exec -it  centos6(容器的名字或者是id) /bin/bash

  docker attach [options] container

  docker attach 3ace9663qqrq  进入正在执行的容器中

 

 

docker ps 查看容器信息

 停止容器

docker stop containerid

docker kill container_name

批量删除

docker rm -f `docker ps -a -q`

本质是进程,必须在前台运行且夯住,否则容器就退出

 

容器的端口映射

容器的默认使用的ip是172.17.0.0/16 网段,而我们外界是10.0.0.0/24网段无法访问所以需要端口的映射。

docker 将自动添加端口的映射通过-p  然后本质是执行的一个iptables 添加一条类似于dnat的规则

docker run -it -p 81:80

可以通过 iptables -t nat -L -n 查看到dnat规则

架构就是外网 10.0.0.22 到内核通过iptables转换到docker网桥上去,然后再转发到各个容器。

小弟才疏学浅,但是还是耗子尾汁的哈哈。

 

posted @ 2020-12-02 19:53  讲武德的年轻人  阅读(190)  评论(0)    收藏  举报