docker和k8s的常见命令
docker
- docker run
创建一个新的容器并运行一个命令。
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
sudo docker run -d -p 5000:5000 training/webapp python app.py //将容器的5000端口映射到内部的5000端口
docker ps
查看正在运行的容器。docker images
列出本地存储的镜像。docker stop [containerid]
停止容器docker exec
在容器中执行命令docker exec -it [containerid] /bin/bash
进入容器docker build
首先要准备一个docker filedocker pull
默认从DockerHub上拉取镜像。docker rm
删除镜像
docker-compose(三剑客之一)
如果涉及多个容器的运行(如服务编排)就可以通过 docker-compose 来实现,它可以轻松的将多个容器作为 service 来运行(当然也可仅运行其中的某个),并且提供了 scale (服务扩容) 的功能。
简单而言,dockerfile可以让你配置运行一个容器,但是docker-compose可以让你一条命令运行多个配置的容器
docker-machine(三剑客之一)
简单来说就是给你快速创建一个docker容器环境的,怎么说呢,如果你要给100台阿里云ECS安装上docker,传统方式就是你一台一台ssh上去安装,但是有了docker-machine就不一样了
docker-swarm(三剑客之一)
和 Docker Compose 一样,都是 Docker 官方容器编排项目,但不同的是,Docker Compose 是一个在单个服务器或主机上创建多个容器的工具,而 Docker Swarm 则可以在多个服务器或主机上创建容器集群服务,对于微服务的部署,显然 Docker Swarm 会更加适合。
kubectl get
http://docs.kubernetes.org.cn/626.html
列出所有运行的Pod信息。
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
busybox 1/1 Running 22 22h
my-nginx-2507610963-q07sh 1/1 Running 0 1d
my-nginx-2507610963-z0krm 1/1 Running 0 1d
myweb-gnz95 1/1 Running 0 4d
myweb-k5l8w 1/1 Running 0 4d
查看所有节点
@master-k8s ~]$ kubectl get nodes
NAME STATUS AGE VERSION
node1-k8s.umetrip Ready 5d v1.7.16
node2-k8s.umetrip Ready 5d v1.7.16
node3-k8s.umetrip Ready 5d v1.7.16
node4-k8s.umetrip Ready 5d v1.7.16
查看所有RC和SVC
master-k8s gdl_test]$ kubectl get rc,svc
NAME DESIRED CURRENT READY AGE
rc/gdlweb 2 2 2 7m
rc/myweb 2 2 2 11mNAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
svc/gdlweb 169.169.28.35 <nodes> 8080:30005/TCP 7m
svc/kubernetes 169.169.0.1 <none> 443/TCP 5d
svc/my-nginx 169.169.244.232 <none> 80/TCP 1d
svc/myweb 169.169.77.217 <nodes> 8080:30001/TCP 11m
显示所有信息。
master-k8s gdl_test]$ kubectl get all
NAME READY STATUS RESTARTS AGE
po/busybox 1/1 Running 25 1d
po/gdlweb-6gjvj 1/1 Running 0 18m
po/gdlweb-djxnb 1/1 Running 0 18m
po/my-nginx-2507610963-q07sh 1/1 Running 0 1d
po/my-nginx-2507610963-z0krm 1/1 Running 0 1d
po/myweb-qhv8q 1/1 Running 0 22m
po/myweb-tvwsl 1/1 Running 0 22m
po/nginx-4217019353-mfzld 0/1 ImagePullBackOff 0 1hNAME DESIRED CURRENT READY AGE
rc/gdlweb 2 2 2 18m
rc/myweb 2 2 2 22mNAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
svc/gdlweb 169.169.28.35 <nodes> 8080:30005/TCP 18m
svc/kubernetes 169.169.0.1 <none> 443/TCP 5d
svc/my-nginx 169.169.244.232 <none> 80/TCP 1d
svc/myweb 169.169.77.217 <nodes> 8080:30001/TCP 22mNAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
deploy/my-nginx 2 2 2 2 1d
deploy/nginx 1 1 1 0 1hNAME DESIRED CURRENT READY AGE
rs/my-nginx-2507610963 2 2 2 1d
rs/nginx-4217019353 1 1 0 1h
kubectl create
rc.yaml的文件实例如下
apiVersion: v1
kind: ReplicationController
metadata:name: gdlweb
spec:replicas: 2selector:app: gdlwebtemplate:metadata:labels:app: gdlwebspec:containers:- name: gdlwebimage: 10.237.65.192:1179/tomcatports:- containerPort: 8080env:- name: MYSQL_SERVICE_HOSTvalue: 'mysql'- name: MYSQL_SERVICE_PORTvalue: '3306'
svc.yaml的实例如下
apiVersion: v1
kind: Service
metadata:name: gdlweb
spec:type: NodePortports:- port: 8080nodePort: 30005selector:app: gdlweb
kubectl logs
查看节点日志。
master-k8s gdl_test]$ kubectl logs gdlweb-6gjvj
14-Nov-2018 07:39:11.668 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version: Apache Tomcat/8.5.24
14-Nov-2018 07:39:11.670 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built: Nov 27 2017 13:05:30 UTC
14-Nov-2018 07:39:11.670 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number: 8.5.24.0
14-Nov-2018 07:39:11.670 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name: Linux
14-Nov-2018 07:39:11.670 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version: 3.10.0-514.el7.x86_64
14-Nov-2018 07:39:11.670 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture: amd64
14-Nov-2018 07:39:11.670 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home: /usr/lib/jvm/java-8-openjdk-amd64/jre
14-Nov-2018 07:39:11.670 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version: 1.8.0_151-8u151-b12-1~deb9u1-b12
14-Nov-2018 07:39:11.670 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor: Oracle Corporation
14-Nov-2018 07:39:11.671 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE: /usr/local/tomcat
14-Nov-2018 07:39:11.671 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME: /usr/local/tomcat
kubectl exec
## 登陆容器
kubectl exec -it gdlweb-6gjvj -- bash
kubectl delete
关闭某个服务。
master-k8s gdl_test]$ kubectl delete -f .
replicationcontroller "gdlweb" deleted
service "gdlweb" deleted
kubectl cluster-info
查看集群已经安装的插件
kubectl cluster-info
Kubernetes master is running at 10.237.65.192:1180
KubeDNS is running at 10.237.65.192:1180/api/v1/namespaces/kube-system/services/kube-dns/proxy
kubectl api-versions
查看集群的API版本。
$ kubectl api-versions
apiextensions.k8s.io/v1beta1
apiregistration.k8s.io/v1beta1
apps/v1beta1
authentication.k8s.io/v1
authentication.k8s.io/v1beta1
authorization.k8s.io/v1
authorization.k8s.io/v1beta1
autoscaling/v1
batch/v1
certificates.k8s.io/v1beta1
extensions/v1beta1
networking.k8s.io/v1
policy/v1beta1
rbac.authorization.k8s.io/v1alpha1
rbac.authorization.k8s.io/v1beta1
settings.k8s.io/v1alpha1
storage.k8s.io/v1
storage.k8s.io/v1beta1
v1
docker和k8s的常见命令相关推荐
- docker pull的镜像放在哪里_Docker 安装ELK及Docker常见命令
最近搭建基于Spring Cloud的微服务框架,日志系统当然最佳选择就是ELK.看着MAC 那紧巴巴的配置,又不想热情退去而留下一堆软件,果断选择Docker安装来节省那可怜的资源.当然这只是鹏哥的 ...
- Docker原理及常见命令
文章目录 一.docker简介 1.Docker namespace 2.Docker CGroups 3.Docker UnionFS 4.AUFS 5.Docker 镜像分层机制 一.Docker ...
- Docker学习,Docker常见命令
Docker常见命令: 启动docker service docker start 镜像命令: docker version ----查看docker版本 docker info ...
- 容器虚拟化技术Docker(一)简介、安装、常见命令、数据卷、安装常规软件
容器虚拟化技术Docker(一)简介.安装.常见命令.数据卷.安装常规软件 1.Docker简介 1.简介 Docker的主要目标是"Build,Ship and Run Any App,A ...
- docker 20安装教程及常见命令详解
本文笔记学习来自B站狂神说 视频链接: https://www.bilibili.com/video/BV1og4y1q7M4?p=14 docker安装 先卸载系统之前的老版本docker sudo ...
- Docker学习笔记-概念和常见命令
Docker架构 Docker包括三个基本概念: 镜像(image):docker镜像就相当于一个root文件系统.比如:官方镜像ubuntu16.04就包含了完整的一套ubuntu16.04最小系统 ...
- docker与k8s面试题基础
该面试题为了解内容 目录 1.docker与虚拟机的区别 2.虚拟机常用有几种网络模式? 3.什么是容器: 4.什么是Docker容器? 5.容器技术的原理: 6.容器技术都有哪些应用: 7.容器的简 ...
- kubectl常见命令及错误排除
一.常见命令 kubectl 详细命令用法可以参考官网: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands ...
- docker 删除容器_Docker使用命令和技巧
既然已经搭建好了Docker关于基础的命令以及使用方式我们当然要进行学习,还有一些小技巧比如批量操作镜像加速和怎么寻找合适的Docker-Images都是本节的内容 附上: 喵了个咪的博客:w-blo ...
- 已解决:centos 7.x系统自带的3.10.x内核存在一些bugs,导致运行docker、k8s不稳定,需要升级内核解决此问题。
1.问题描述 Docker 要求 CentOS 系统的内核版本高于 3.10,因为centos 7.x系统自带的3.10.x内核存在一些bugs,导致运行docker.k8s不稳定. 2.问题分析 升 ...
最新文章
- 题目 1470:【蓝桥杯】【入门题】【基础练习VIP】时间转换
- 美国诚实签经验——着装,戒指,手表装土豪,医生预约单,流水、房产和工作证明...
- C++(STL):21---deque之源码剖析
- IO流--buffer
- ICCV 2021 |VisDrone2021 无人机视觉挑战赛启动
- 操作系统(2)-创建线程的几种方式
- 基础编程题目集 6-11 求自定类型元素序列的中位数 (25 分)
- FREETYPE旋转功能初探
- 虚拟机队列实战虚拟化存储设计之LUN Sizing
- 2台电脑一根网线传文件_一根网线做两根用?接两个水晶头?是的你没看错
- 学习笔记-Matlab算法篇-动态规划
- 腾讯翻译君在线翻译怎么翻译整个文件_很实用的PDF文档在线翻译工具,整篇PDF翻译一键搞定...
- 大学四年毕业季我用Python写了一个论文降重工具(希望能帮助到学弟学妹)
- 实数系与实数定理(下)
- if or函数套用_excel if函数和or函数结合使用的方法
- Swift --- 下标(subscript)
- iphone7一晚上掉电50%_苹果7待机一晚掉电多少
- nginx配置不生效
- 自成一派的风格楷体字体
- 数组和ArrayList的区别