随笔分类 -  DevOps

摘要:镜像和容器是docker中最基础的概念,镜像可以理解为包含应用程序以及其相关依赖的一个基础文件系统,在其启动过程中,以只读的方式被用于创建容器的运行环境,本质上是基于UnionFS文件系统的一组镜像层依次挂载而得,每个镜像层包含的是对上一层镜像的修改 获取镜像 最常见的获取镜像的方式是从镜像仓库拉取 阅读全文
posted @ 2023-02-07 23:35 N3ptune 阅读(439) 评论(0) 推荐(0)
摘要:编写主节点配置文件master.cnf: [client] # 默认字符集 default-character-set=utf8mb4 [mysqld] # 字符集 character-set-server=utf8mb4 collation-server=utf8mb4_general_ci # 阅读全文
posted @ 2022-12-03 19:01 N3ptune 阅读(342) 评论(0) 推荐(0)
摘要:使用Docker打包Go程序的镜像 Golang镜像 首先使用docker pull获取golang镜像 $ sudo docker pull golang:1.18.3 查看镜像: $ sudo docker image ls golang alpine d0f5238dcb8b 3 weeks 阅读全文
posted @ 2022-09-05 09:39 N3ptune 阅读(1816) 评论(0) 推荐(0)
摘要:解析Docker的4种容器网络 默认网络模型 先介绍默认的网络模型: 安装docker后,输入ifconfig就会发现多了网卡中多了一个docker0: $ ifconfig docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 172. 阅读全文
posted @ 2022-08-20 08:57 N3ptune 阅读(1365) 评论(0) 推荐(0)
摘要:容器只是对单个进程的隔离和封装,实际的应用场景要求许多的应用进程互相协同工作,因此出现了容器编排,Kubernetes将集群中的计算资源定义为节点(Node),其中又划分成控制面和数据面两类,控制面是Master节点,负责管理集群和运维监控,里面的核心组件是apiserver、etcd、schedu 阅读全文
posted @ 2022-07-29 12:38 N3ptune 阅读(265) 评论(0) 推荐(0)
摘要:Kubernetes中用于管理配置信息的两种对象: ConfigMap和Secret,可使用它们来灵活地配置和定制应用。应用程序有很多类别的配置信息,从数据安全的角度看可分为明文配置和机密配置,明文配置就是不保密,可以任意修改,如服务端口、运行参数、文件路径等等,机密配置涉及敏感信息需要保密,不能随 阅读全文
posted @ 2022-07-28 13:16 N3ptune 阅读(374) 评论(0) 推荐(0)
摘要:Dockerfile官方文档: https://docs.docker.com/engine/reference/builder/ 获取容器镜像的方法 容器镜像是容器模板,通过容器镜像才能快速创建容器,容器镜像可分为操作系统类和应用类,操作系统类如CentOS,Ubuntu等镜像,应用类的镜像如Ng 阅读全文
posted @ 2022-07-27 14:28 N3ptune 阅读(1568) 评论(0) 推荐(0)
摘要:基于Pod的设计理念,Kubernetes有两种对象Job和CronJob Job和CronJob组合了Pod,实现了对离线业务的处理。如Nginx和busybox,分别代表了Kubernetes里的两大类业务: Nginx这样长时间运行的在线业务和busybox这样的短时间运行的离线业务。在线业务 阅读全文
posted @ 2022-07-25 13:42 N3ptune 阅读(177) 评论(0) 推荐(0)
摘要:为了解决多应用联合运行的问题,同时还要不破坏容器的隔离,就要再对多个容器进行打包。Pod就是对容器的打包,里面的容器可以看成是一个整体,总是能一起调度、一起运行,绝不会出现分离的情况,而Pod属于Kubernetes,可以在不触碰下层容器的情况下任意定制和修改,Kubernetes让Pod去编排容器 阅读全文
posted @ 2022-07-24 21:35 N3ptune 阅读(235) 评论(0) 推荐(0)
摘要:YAML是Kubernetes的标准工作语言 YAML介绍 Kubernetes使用了YAML语言一个非常关键的特性,叫作"声明式",对应的有另外一个词: "命令式" 先简单描述声明式和命令式之间的区别: 如Docker和Dokcerfile就属于"命令式",大多数编程语言属于命令式,特点是交互性强 阅读全文
posted @ 2022-07-23 21:33 N3ptune 阅读(150) 评论(0) 推荐(0)
摘要:容器技术只是解决了运维部署工作中的一个很小的问题,在现实生产环境中,除了最基本的安装,还会各式各样的需求,比如服务发现、负载均衡、状态监控、健康检查、扩容缩容、应用迁移、高可用等等。这些容器之上的管理、调度工作就是容器编排 Kubernetes 从0到0.1 是一个生产级别的容器编排平台和集群管理系 阅读全文
posted @ 2022-07-23 13:54 N3ptune 阅读(150) 评论(0) 推荐(0)
摘要:实现多个容器之间的协同,搭建Wordpress网站,要用到3个容器,Wordpress、MariaDB和Nginx 拉取镜像 使用docker pull拉取3个镜像: $ sudo docker pull wordpress:5 $ sudo docker pull mariadb:10 $ sud 阅读全文
posted @ 2022-07-22 20:43 N3ptune 阅读(231) 评论(0) 推荐(0)
摘要:镜像是一个打包文件,其中包含了应用程序及其运行所依赖的环境,例如文件系统、环境变量、配置参数等等 联合文件系统 容器镜像内部并不是一个平坦的结构,而是由许多的镜像层组成,每层都是只读不可修改修改的一组文件,相同的层可以在镜像之间共享,然后多个层像搭积木一样堆叠起来,使用一种叫"Union FS联合文 阅读全文
posted @ 2022-07-20 09:13 N3ptune 阅读(378) 评论(0) 推荐(1)
摘要:容器是一个系统中被隔离的特殊环境,进程可以在其中不受干扰地运行,使用Docker来实现容器化 容器化 运行容器时,要先拉取一个镜像(image),再通过这个镜像来启动容器: $ sudo docker pull busybox $ docker run busybox echo hello worl 阅读全文
posted @ 2022-07-18 21:56 N3ptune 阅读(109) 评论(0) 推荐(1)