Docker与K8s笔记(不定时更新)

关于Docker与K8s的介绍

docker可以把它理解为一个应用程序执行的容器。但是docker本身和虚拟机还是有较为明显的出入的。
1.虚拟机的性能比较依靠硬件,而docker开源且轻量化,构建在操作系统中,更加轻便
2.docker的轻量化适用于部署少量的应用,例如说一个docker容器部署一个redis,一个mysql
3.docker基于dockerfile来进行构建容器,程序开发人员可以手动编写dockerfile来指定相应的系统环境和依赖

docker自身有着很多的优点:
1.文件系统隔离,每个不同的容器都存在不同的独立文件系统中
2.资源隔离,每个容器都有自己独立的ip,网络和虚拟接口
3.日志记录,docker将会手机和记录每个进程容器的标准流(stdout/stderr/stdin),用于实时检索或批量检索.

关于docker与k8s:
十分钟看懂docker及k8s
docker笔记19-k8s的介绍

Docker常见命令

导出镜像命令:
docker save -o ./导出文件名.tar 镜像名:tag
docker save -o ./test.tar hyperledger/fabric-ccenv:latest
docker save -o ./test.tar hyperledger/fabric-orderer:1.4.1
导入镜像命令:
docker load --input ./test.tar
查看Docker容器日志
docker logs <container_id>
Docker重启:
systemctl daemon-reload && systemctl restart docker && systemctl status docker
Docker删除所有容器:
docker stop $(docker ps -aq)
docker rm $(docker ps -aq)

K8s常见命令

kubectl logs <pod_name>
kubectl logs -f <pod_name>
查看指定pod中指定容器的日志
kubectl logs <pod_name> -c <container_name>

K8S中的一些常见命令

kubectl get all nodes 获取所有node
kubectl get all pods --all-namespaces 获取所有namespaces的pod
kubectl describe pod XXX -n XXX 查看对应pod的启动日志
kubectl logs <pod_name> 查看k8s日志
kubectl logs -f <pod_name> 实时查看日志文件
kubectl logs <pod_name> -c <container_name> 查看指定pod中指定容器的日志

为什么要使用K8S?

1、故障迁移:当某一个node节点关机或挂掉后,node节点上的服务会自动转移到另一个node节点上,这个过程所有服务不中断。
2、资源调度:当node节点上的cpu、内存不够用的时候,可以扩充node节点
3、资源隔离:通过namespace实现了资源的隔离

离线部署Docker

参考博客:Centos7中离线安装DockerCE最新版

安装docker-compose

安装最新版本请移步 github最新版地址
github上面安装命令[当前最新版本为1.25.0]

curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
发布了13 篇原创文章 · 获赞 0 · 访问量 2598

猜你喜欢

转载自blog.csdn.net/weixin_43839871/article/details/100183930
今日推荐