![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Docker
JESSE_JAVA
每天进步一点点!
展开
-
CentOS下使用Docker安装MySQL
最近使用云服务器,学习一下Docker,今天学着使用Docker安装MySQL。首先,从阿里云的Docker Hub 上pull一个MySQL的image.[CentOS@linuxidc~]$ docker pull registry.cn-hangzhou.aliyuncs.com/acs-sample/mysql:5.75.7: Pulling from acs-sample/mysqld4...转载 2018-06-06 21:24:17 · 331 阅读 · 0 评论 -
Docker系列十五:dockerStack部署项目和进行容器的监控
参考网站:https://docs.docker.com/compose/compose-file/#build项目一使用:Compose file version 3 reference三个节点:Manager,node2.和node3yml文件:docker-compose.ymlversion: '3'services: web: image:...原创 2018-08-20 21:58:53 · 3541 阅读 · 0 评论 -
Docker系列十六:dockerSecret的两种实现方式
生产环境下,为了安全,我们不能把各项目的配置密码写入到配置文件我们可以引入docker的secret方式保护密码。 第一种:[root@swarm-manager example-vote-app]# vim password[root@swarm-manager example-vote-app]# docker secret create my-pw ...原创 2018-08-21 10:57:32 · 3069 阅读 · 0 评论 -
Docker系列十六:Docker Swarm不间断更新业务
[root@swarm-manager example-vote-app]# docker network create -d overlay demoycmwxqjbebksqxcblqigruj9u[root@swarm-manager example-vote-app]# docker service create --name web --publish 8080:5000 --ne...原创 2018-08-21 11:27:09 · 3223 阅读 · 1 评论 -
k8s中的存储卷-节点和POD存储数据(一)
容器的存储卷Pod是自己有生命周期的Pod消失后数据也会消失所以我们要把数据放在一个容器的外面docker存储卷在k8s上只有一定的存储性,因为k8s是调度的,Pod挂掉之后再启动不会默认之前的数据位置脱离节点的存储设备才可以解决持久能力在K8s上Pod删除,存储卷也会随之而删除的,这一点区分dockeremptyDir 空目录hostPath 主机目录分布式存储:...原创 2018-09-11 16:25:18 · 9763 阅读 · 0 评论 -
k8s中的存储卷-基于NFS和PV,PVC的入门(二)
下面做一个基于NFS的存储NFS支持多客户端的读写新建立一个主机node3:192.168.68.30安装yum -y install nfs-utils建立共享文件夹:mkdir /data/volumes -pv设置共享:vim /etc/exports/data/volumes 172.20.0.0/16(rw,no_root_squash)目录 授权给 网段 权限...原创 2018-09-11 16:30:52 · 3926 阅读 · 0 评论 -
kubernetes 中pv、pvc、configmap和secret
configmap和secretPV和PVC是借助于StorageClass来分配磁盘的如何给Pod传配置信息:两种方式:1.把configmap关联到一个pod上,传递给pod内部的一个变量,注入的方式给容器传配置信息2.配置卷,将配置文件映射到外面的路径configmap在k8s上扮演了K8s的配置中心的功能Pod启动时候讲configmap打包为存储卷,挂载到配置文件的路...原创 2018-09-12 15:34:29 · 2010 阅读 · 0 评论 -
kebernetes dashboard使用config和Token
安装yaml:kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml删除yaml:kubectl delete -f https://raw.githubusercontent.co...原创 2018-09-16 17:42:07 · 1691 阅读 · 0 评论 -
K8s 配置网络插件flannel
配置网络插件flanneldocker: bridge:容器的默认网络 joined:使用别的容器的网络空间 open:容器直接共享宿主机的网络空间 none:不使用网络空间Kubernetes网络通信: 容器间通信:同一个Pod内的多个容器间的通信 Pod通信:Pod IP <==> Pod IP Pod与Service...原创 2018-09-17 14:45:00 · 15122 阅读 · 2 评论 -
基于canel的网络策略
基于canel的网络策略canel工作的默认网段是192.168.0.0/16的网段官网:https://docs.projectcalico.org/v3.2/introduction/参考地址:https://docs.projectcalico.org/v3.2/getting-started/kubernetes/installation/flannel分别运行:k...原创 2018-09-17 17:50:02 · 2383 阅读 · 0 评论 -
StatefulSet有状态应用副本集
statefulset有状态应用副本集PetSet -> StatefulSet1.文档且唯一的网络标识符2.稳定且持久的存储3.有序,平滑的部署和扩展4.有序,平滑的删除和终止5.有序的滚动更新三个组件:headless serviceStatefulSetvolumeClaimTemplate实验的前期准备条件:master;192.168.68.10nod...原创 2018-09-13 10:56:50 · 2239 阅读 · 0 评论 -
Kubernetes调度器,预选策略以及优选函数以及高级调度
k8s调度器是允许自定义的1.k8s的调度算法会从众多node选出适用的调度算法2.预选过程是排除那些不符合Pod运行的环境3.优选节点然后绑定也可以自己进行调度,如ssd,GPU等思路:加上标签就可以调度器: 预选策略: CheckNodeCondition:先去检查node,磁盘是否正常 GeneralPredicates:通用预选...原创 2018-09-18 14:54:22 · 2599 阅读 · 0 评论 -
kubectl认证 授权 准入控制
kubernetes 认证及serviceaccount(服务账号)kubernetes中apiservice是唯一访问的入口认证->授权->准入控制认证方式:tokensslkubect和node都要双向认证K8s1.6以上增加了RBAC认证,授权检查kuberadm是强制使用了kuberadm的授权认证这都是最高的权限进行管理 用户账号具有以下信息:...原创 2018-09-13 16:30:41 · 8124 阅读 · 0 评论 -
容器资源需求,资源限制以及HeapSter
容器的资源需求,资源限制在k8s上可以定义资源的限制和最高值limits:限制,硬限制,最大requests:需求,最低保障CPU的单位:一颗逻辑CPU1=1000毫核CPU查看帮助:kubectl explain pods.spec.containers.resourceslimits:https://kubernetes.io/docs/concepts/configu...原创 2018-09-19 14:49:30 · 1388 阅读 · 0 评论 -
Docker系列器八:docker data volume与docker bind Mouting
意义:不能随着容器得删除而把数据删除创建一个mysqldocker run -d --name mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql查看volume[root@docker-node1 vagrant]# docker volume lsDRIVER VOLUME NAMElocal ...原创 2018-08-17 17:12:56 · 792 阅读 · 0 评论 -
Docker系列十四:Ingress Network数据包通过lvs进入到有服务的主机
Internal Load Balancing 内部负载平衡Ingress Network:外部访问的负载均衡,我们在节点访问地址和端口服务的时候,都可以请求到数据,他的原理是通过LVS把真正的服务转发到真正具有服务的节点上。例如,访问docker3的8080,但是docker3 8080并没有这个服务,他会将这个服务转发到有服务docker2的主机上,然后在吧数据返回。在Ma...原创 2018-08-19 22:19:32 · 4235 阅读 · 0 评论 -
Ansible 学习笔记
Ansible 基础第一部分:1,Ansible是先出现的自动化运维工具,Ansible是一个配置管理和应用部署工具,基于python开发,聚合了众多的运维工具(puppet,cfengine,chef,func,fabric SaltStack)的优点,实现批量系统部署,批量运行命令,Ansible是基于模块工作的,本身没有部署能力,真正有部署能力的是Ansible所运行的模块,Ansible只...原创 2018-06-06 21:55:11 · 757 阅读 · 0 评论 -
Docker系列器七:Docker网络 Namespace的概念和容器互通
单机: Bridge Network Host Network None Network多机: Overlay Networkdocker 命名空间 namespacelinux和容器的namespace网络的隔离docker run -d --name test2 busybox /bin/sh -c "while true; do s...原创 2018-08-14 23:27:00 · 1276 阅读 · 0 评论 -
Docker系列五:Docke Bridge网络原理,容器间网络通信,对外通信详解
docker中两个容器之间的网络是如何连接到一起的?查看本机的docker网络docker network ls[root@docker-node1 vagrant]# docker network lsNETWORK ID NAME DRIVER SCOPEbc09f52c660b bridge...原创 2018-08-15 00:59:19 · 1739 阅读 · 0 评论 -
Docker系列六:Docke的link机制和自定义Bridge网络
===============Docker link机制=============创建第二个容器的时候可以link到第一个容器上docker run -d --name test1 busybox /bin/sh -c "while true; do sleep 3000; done"docker run -d --name test2 --link test1 busybox /bin/...原创 2018-08-15 01:53:31 · 819 阅读 · 0 评论 -
Docker系列一:利用Vargrant快速创建机器
vagrant box list查看box 列表创建虚拟机vagrant init centos7这时候会自动生成Vagrantfile文件查看Vagrantfile文件more Vagrantfilevagrant up 启动虚拟机vagrant status 查看虚拟机的状态vagrant halt 虚拟机关机vagrant destroy 删除虚拟机安装d...原创 2018-08-12 15:42:31 · 2072 阅读 · 0 评论 -
Docker系列二:Container与Dockerfile基本操作
docker image ls 查看镜像hello-world的镜像docker pull hello-worlddocker run hello-world输出hello,world制作一个hello,world的imagevim hello.c#include<stdio.h>int main(){ printf("hello,jesse"\n);}gc...原创 2018-08-12 19:06:32 · 1067 阅读 · 0 评论 -
Docker系列三:DockerHub私有仓库的搭建
server1=192.168.1.40server2=192.168.205.10自己在server1机器上搭建systemctl start dockerdocker run -d -p 5000:5000 --restart always --name registry registry:2server2测试server1能不能通:telnet 192.168.1.40 5000...原创 2018-08-12 21:18:01 · 5261 阅读 · 0 评论 -
Docker系列四:Dockefile app.py 和简单的资源限制
python可以正常运行,版本是2.7pip command not found解决:[root@ ~]# yum -y install python-setuptools[root@ ~]# easy_install pip开始: [root@docker-host python-app]# more app.py from flask import Flaskap...原创 2018-08-13 22:12:16 · 928 阅读 · 0 评论 -
Docker系列器九:docker-compose与docker-compose.yml语法
一般情况下:docker 安装wordpress,流程是:docker run -d --name mysql -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=wordpress mysqldocker run -d -e WORDPRESS_DB_HOST=mysql:3306 --li...原创 2018-08-18 15:17:07 · 2340 阅读 · 0 评论 -
Docker系列器十:docker-compose和网站的负载均衡
Docker应用中,为了达到高可用,可以做很多的web服务,保持服务的稳定性,在web的出口处是haproxy等负载应用。命令:在和yml文件的同文件下,执行任何的docker-pose的命令,否则是提示找不到文件的。docker up -d 后台启动某个程序他会根据.yml文件中的yml自动下载和构建,文中的dicker images是获取的dockerhub上线的资源,尝试...原创 2018-08-19 01:03:15 · 1335 阅读 · 0 评论 -
Docker系列器十一:容器编排docker swarm和水平扩展
容器编排 Swarm mode在单机docker中,思考:1,怎么去管理这么多容器?2,怎么能方便的横向扩展?3,如果容器down了,怎么能自动恢复?4,如何去更新容器而不影响这些业务?5,如何去监控追踪这些容器?6,怎么去调度容器的创建?7,保护隐私数据?Docker Swarm Mode Architectureswarm是一种集群的架构swarm里面有几点,节点no...原创 2018-08-19 13:19:38 · 1518 阅读 · 0 评论 -
Docker系列器十二:docker swarm三节点创建一个wordpress
1,现在manager创建一个网络:docker network create -d overlay demo创建完成后,在node上没有显示。[root@docker-host ~]# docker network ls NETWORK ID NAME DRIVER SCOPE 1f...原创 2018-08-19 17:04:20 · 841 阅读 · 1 评论 -
Docker系列十三:集群服务间通信之routingMesh之Internal
Internal: Container和Container之间访问通过Overlay网络(通过VIP虚拟IP) 在swarm的内部是有一个DNS的自动发现的功能验证试验: 1,创建一个demo的网络 docker network create -d overlay demo 2,docker service create --name whoami -...原创 2018-08-19 18:31:15 · 521 阅读 · 0 评论 -
K8S 资源指标API及自定义指标API
资源指标API及自定义指标API资源指标:metrics-server自定义指标1.8以后引入了资源api指标监视资源指标:metrics-server自定义指标:prometheus,k8s-prometheus-adapter k8s的中的prometheus需要k8s-prometheus-adapter转换一下才可以使用新一代架构: 核心指标流水线: ...原创 2018-09-20 17:45:00 · 6971 阅读 · 1 评论