容器说明

文章目录

Docker

Docker介绍
虚拟化容器,装应用的容器,容器化平台,托管在GitHub ,跨平台,支持macos,windows, linux
Docker思想:
集装箱
标准化:1. 运输方式 2.存储方式 3.API接口
隔离,实现快速创建和销毁
Docker解决的问题:
一个web程序成功运行依赖:OS,jdk,tomcate,代码,配置文件
Docker将以上全部放在一个集装箱里,解决了配置环境不同造成的问题
Docker隔离机制,
Docker技术:
镜像 :集装箱
仓库:超级码头
容器:运行程序的地方
Docker运行程序的过程:去仓库把镜像拉到本地,然后用一条命令,把镜像运行起来变成容器
Build :构建镜像
Ship:运输镜像。从仓库和主机
Run:运行镜像就是容器
镜像:image
各种集装箱,即各种文件
Docker将它们保存在本地,镜像文件的保存格式->
Unix的联合文件系统ufs的存储形式,将不同的目录挂在同一个虚拟文件系统下
实现文件的分层,每层有不同目录下自己的文件,像集装箱一样
在这里插入图片描述
最下面一层是OS的引导,一层层罗上去,相当于一个文件系统
容器:本质是一个进程,假设为一个虚拟机,上面图,镜像中容器最上面的一层是可读可写的文件系统,其余是只读的,
在写文件前,会拷到容器最上层,然后修改,会从最上层开始查找
容器是可以修改的,而镜像是不可以修改的,可以保证同一个镜像生成多个容器,独立运行,之间没有任何干扰
仓库:构建镜像的目的,在其他环境进行运行程序
传输过程:镜像到仓库,目的地从仓库中获取
上传镜像的仓库地址:hub.docker.com c.163.com 公开的
可建立自己的私密仓库
从远程仓库拉取镜像docker pull name(拉取镜像的名称)
查看本机的镜像docker images
运行 docker run image(镜像的名字)[:TAG][COMAND][ARG……依赖的参数]
1.运行hello-world镜像,从hub.docker.com 中拉取
2.运行Nginx(web服务器,长久不间断的运行)镜像,最好在后台运行
Docker run运行
Docker ps 查看运行的容器
Docker run –help查看命令
Docker run -d 后台运行,返回ID
进入到容器内部:docker exec –help
常用docker exec -it f4 bash 返回用户名@id
可用Linux的一些命令:因为ngix运行在linux上
#ls,显示目录
#which ngix ngix在哪里
#ps -ef 当前服务有哪些进程
#exit 退出又回到docker主机界面上
Docker网络类型
(1)Docker容器默认情况下分配一个独立的network namespace,即网络类型的bridge 桥接
(2)host模式:不会分配独立的一个network namespace,是和主机使用一个,不会独立虚拟出自己的网卡,配置自己的IP
(3)NONE,没有网络,不会和外界进行通讯
Bridge模式:使用的网络有独立的namespace,需要一种技术使容器的端口在主机上访问到,这种就是端口映射
Docker网络模式:
在这里插入图片描述
Eth0 ,主机上的网卡,和docker上的虚拟网卡,网桥对端口进行映射
Docker ps 查看进程
Docker stop 停止容器 docker restart重启容器 docker exec进入容器内部
关于端口映射的命令使用:docker run –help查看
Docker -d -p 8080:80(容器的端口) contatin的名字
某个端口与主机进行映射
检查是不是开放了端口:netstat -na|grep 8080 接下来可以用浏览器进行访问:localhost:8080
制作自己的镜像:
Dockfile:告诉怎样制作自己的镜像
Docker build:执行dockfile中的每一步,构建docker镜像
写dockerfile的命令:Vi docerfile
1.From 基础镜像的名字
2.镜像co的所有者 maintainer 名字 联系
……
3.docker build -t 起名字
什么是虚拟化
虚拟化
Docker架构
Docker镜像操作
Docker容器操作
命令
 安装docker registry:

docker run -d -p 5000:5000 --name registry-srv --restart=always -v /data/registry:/var/lib/registry -e REGISTRY_STORAGE_DELETE_ENABLED=true registry:2

 安装docker UI:http://172.16.16.137:9000/

docker run -it -d -p 9000:8080 --name registry-web --link registry-srv -e REGISTRY_URL=http://registry-srv:5000/v2 -e REGISTRY_NAME=localhost:5000 hyper/docker-registry-web

 垃圾回收

docker exec -it 75c1e6f30464 bin/registry garbage-collect /etc/docker/registry/config.yml

 删除repo

脚本位于:172.16.16.137:/root

./docker_reg_tool http://192.168.19.30:5000 delete bimernet/bimernet-qto-service

 服务列表
docker ps
docker ps -a

 ls anaconda -ks.cfg
pwd root

 docker logs id(服务器id) 也可以这样查看log信息
free -m 查看剩余多少空间

启动所有镜像:docker start $(docker ps -a -q)

停某台服务命令:docker stop service-id

服务部署

Kubernetes(K8S)

发布了4 篇原创文章 · 获赞 0 · 访问量 47

猜你喜欢

转载自blog.csdn.net/fireworksunshine/article/details/105407216
今日推荐