背景 很多时候我们在将开发环境的代码推送到GitLab上面以后,我们在测试的时候发现了问题后无法通过现有的日志输出级别来定位问题,比如我们需要看EFCore生成的SQL语句,在生产环境我们是不可能输出这些语句的,这个时候我们就需要将远程部署的Docker镜像拉取到本地然后进行调试,然后再看具体的日志以便排查疑难问题. 比如我们在使用Serilog进行日志记录的时候,我们会在appsettings.Development.json和appsettings.Production.json中配置不同的…
译者按: 实践中会发现,生产环境中使用单个Docker节点是远远不够的,搭建Docker集群势在必行.然而,面对Kubernetes, Mesos以及Swarm等众多容器集群系统,我们该如何选择呢?它们之中,Swarm是Docker原生的,同时也是最简单,最易学,最节省资源的,至少值得我们多了解一下.本文将介绍一些非常实用的建议. 原文: Tips for using Docker Swarm mode in production 译者: Fundebug 为了保证可读性,本文采用意译而非直译.…
如果 2019 年技术圈有十大流行词,容器化肯定占有一席之地,随着 Docker 的风靡,前端领域应用到 Docker 的场景也越来越多,本文主要来讲述下开源的分布式图数据库 Nebula Graph 是如何将 Docker 应用到可视化界面中,并将 1.3G 的 Docker 镜像优化到 0.3G 的实践经验. 为什么要用 Docker 对于前端日常开发而言,有时也会用到 Docker,结合到 Nebula Graph Studio (分布式图数据库 Nebula Graph 的图形界面工具)…
这段时间在开发一个腾讯文档全品类通用的 HTML 动态服务,为了方便各品类接入的生成与部署,也顺应上云的趋势,考虑使用 Docker 的方式来固定服务内容,统一进行制品版本的管理.本篇文章就将我在服务 Docker 化的过程中积累起来的优化经验分享出来,供大家参考. 以一个例子开头,大部分刚接触 Docker 的同学应该都会这样编写项目的 Dockerfile,如下所示: FROM node:14 WORKDIR /app COPY . . # 安装 npm 依赖 RUN npm install…
是否对容器使用的资源进行合理限制,比如内存 CPU 网络带宽等. 是否设置合理的网络访问限制,如 非root用户 iptables. 是否有在docker无法使用时的备选方案,如提供非docker环境对搭建部署方案. 是否对 开发 测试 线上各个环境的私有镜像 Dockerfile 配置 明确了使用规范.…
技术栈:1. 构建系统2. 镜像仓库3. 宿主机管理4. 配置管理5. 部署6. 编排7. 日志8. 监控 镜像:1. 如果用户像往常一样运行包安装命令,这些永远也用不上的缓存包文件将会永远地成为镜像的一部分.不过,如果用户在同一条安装命令中删除它们,这些文件就会像从未存在过一样.RUN xxxxxxxxxxxxxxxxxxx \&& xxxxxxxxxxxxxxxxxxx \&& rm -f ...... 通过环境变量将配置传递给容器内部 当用户需要包装一个无法通过环境变…
导读 Docker现在越来越流行,但是真正在生产环境部署Docker还是个比较新的概念,还没有一个标准的流程.作者是ROR的程序员,作者结合平时的部署经验,联系Docker的特点,向大家分享了其在生产环境使用Docker部署应用程序的一个实践. Docker是现在开发应用程序的不错选择:因为对于一个研发组来说,部署一个应用再也不用像以前那样繁琐的修改.设置配置文件了:因为对于Docker来说它“屏蔽”了应用程序的运行环境,不管你使用Mac.Linux还是Windows都能用相同的方式运行. 但是…
Kubernetes 在生产环境中常用架构 首先,我们来梳理下Kubernetes生产架构,其设计适用于绝大多数环境.如下图所示 在该架构中,我们可以将其分为四层,如下: Client层:即Kubernetes集群外部用户.客户端等: 服务访问层:即由Traefik ingress实现服务发现.负载均衡和路由规则定义等: 业务应用层:即基于Kubernetes平台构建和运行企业业务应用,如CI/CD持续集成.微服务项目.监控告警和日志管理.私有镜像仓库等服务: 基础设施层:即由Kubernete…
系列目录 Nexus oss仓库管理平台搭建 Nexus是一款仓库管理工具,支持Npm,bower,maven,nuget,apt,yum甚至docker,helm等各种仓库,说的通俗以下,就是私服镜像仓库.并且有免费版,OSS版即为免费版,下载的时候请注意版本的选择. 下载地址 往下面滚动页面,可以看到Choose your Nexus,有osx,windows和unix版本可供选择.这里我选择的是windows版本. 下载的内容是一个压缩包,下载完成后把压缩包解压.解压后有两个文件夹,我们进…
Docker镜像管理基础篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Docker Images Docker镜像还有启动容器所需要的文件系统及其内容,因此,其用于创建并启动docker容器. 1>.采用分层构建机制,最底层为bootfs,向上为rootfs bootfs: 用于系统引导的文件系统,包括bootloader和kernel,容器启动完成后会被卸载以节约内存资源. rootfs: 如上图所示,rootfs位于bootfs之上,表现为docker容器的根文件…