docker特权模式与capadd和capdrop 你可能希望在容器中执行的一些高级操作(例如Docker-in-Docker(DinD),NTP,安装环回设备等),默认情况下将需要比给予容器的root用户更高的权限。因此,需要允许其他特权才能使容器无问题地运行,因此对于该用例,Docker具有非常简单但非常宽泛的特权模式,可将完整主机的功能添加到容器中。要使用此模式,只是追加--privileged到docker run命令: Docker-in 应用运维 2023-07-16 张二河
docker多阶段构建MultiStage与Builder对比总结 此前,在早些时候,我发表过Distroless与多阶段构建,其中介绍了简单的多阶段构建方式。阅读本文,你将跟快的了解多阶段构建带来的便利以及使用方法。 本文中主要介绍多阶段构建的方式,这种方式本身就可以节省一部分空间,对于如何缩减镜像大小的几种方式类文章总结将会在此后进行编写发布,那将是后面会发生的事情。我们暂且来看多阶段构建带给我们的便利性 为什么镜像会变大? Docker就像一个版本控制系统。 应用运维 2023-07-16 穿过生命散发芬芳
docker不能忽视的.dockerignore用法 .dockerignore的文章或许对老司机来说是一个过时的话题,但是我已经写了很多关于dockers使用的文章,并且我在讨论群组里面发现有人对此.dockerignore并不清楚,在这种情况下,我有必要重新复述一次。查看本章节,你将了解.dockerignore的使用和注意事项。祝你愉快 Docker镜像可以和普通应用一样运行在云服务上,为什么还要优化它们呢?事实证明使用.dockerignor 应用运维 2023-07-16 宇宙之一粟
docker容器中程序不应该以root用户身份运行 容器中的进程不应以root身份运行,或者假设它们是root用户。正确的方式是使用已知的UID和GID在Dockerfile中创建用户,并以此用户身份运行你的进程。通过限制对资源的访问,遵循此模式的映像更容易安全运行 概观 精心设计的系统遵循最小特权原则。这简单地说明应用程序应该只能访问它所需的资源以执行其所需的功能。这在设计安全系统时至关重要。无论是恶意还是由于某些错误,进程可能会在运行时产生意外 应用运维 2023-07-16 大猫
docker卷和文件系统权限 Docker容器是无状态的(不需要在运行时候做持久化数据)。一般来讲,一些有状态的,存储重要数据的应用需要一些持久存储。卷功能提供了一种支持此要求的方法,但它带有一些关于文件系统权限的问题。 在大多数部署的设置中,将使用容器编排机制,并且持久存储由某些公共云产品提供,这些产品可能具有自己的配置权限的方式。但是,在本地开发或产品的早期迭代期间,最简单的方法是将主机目录公开为docker卷。 简而言之 应用运维 2023-07-16 贤蛋大眼萌
缩减docker镜像大小的5个步骤 docker容器的应用程序易于部署管理是基于docker镜像,一个优良的docker镜像是非常有必要的。 在多数情况下,我们处于无状态应用的快速部署,这个过程中,且不管你在dockerhub使用还是本地镜像仓库使用,合理的镜像的大小也是有必要的。除此之外,我们应该考虑那些? Docker镜像大小的重要性? 网络带宽导致的空闲等待 除了镜像大小外,我们还需要考虑更新迭代的问题,更大的基础镜像意味着需 应用运维 2023-07-16 剑圣无痕
尽可能不在docker镜像中嵌入配置或者密码 切勿将配置或机密信息嵌入Docker镜像中。相反,在构建Docker镜像时,期望使用业务流程运行时将配置和机密的信息提供给容器,这些包含:Kubernetes Secrets,Docker Secrets。而外部工具或环境变量(对于非敏感性)用于非敏感数据。但仍需注意,不要无意中在镜像层的隐藏层中包含机密信息。 概述 容器镜像应该是可重用且安全的。当镜像层包含嵌入式配置或机密信息时,它违反了此规则 应用运维 2023-07-16 大树
docker的安全实践 Docker可以加速部署周期,可以更快速度推出代码。但它也带来了一系列意想不到的安全隐患,你应该知道。 下面是五种常见的场景,其中部署Docker镜像会打开以前可能没有考虑过的新类型的安全问题,以及一些好的工具和建议,你可以使用它们来确保在部署时尽可能的减少安全隐患。 1.镜像的真实性 让我们从一个Docker本质上固有的问题开始:镜像真实性。如果你已经使用Docker一段时间,你将熟悉很多镜像和 应用运维 2023-07-15 大猫
三小时快速入门docker指南 在此之前,我记录了很多章关于docker使用的基础,从安装到编写,其中还有一些常见的使用技巧,这其中还包括一些docker-compsoe的简单操作案例,其中有一些由于编写的时间太久,bug很多,但用来学习绰绰有余,但也仅供参考。 现在,我将所有的文章汇聚在一个页面中方便查看。 假如你是一个docker新手,没有太多时间,你不妨从本章入手学习,假如你想详细了解docker,那我推荐你查看我记录的白 应用运维 2023-07-15 法医
dockercompose2和3的常用参数和资源限制 通常我们在编排一个容器的时候,最简单的方式就是使用docker-compose,compose是简单的将docker run的命令进行组织起来。而在docker早期的产品里面compose被收购后是很重要的一个环节。 当我们run一个容器的时候,一般而言,我们关注她的网络,持久化,资源情况以rabbitmq为例,如下: 2.4 version: '2.4' services: 应用运维 2023-07-15 大树
zabbix自动发现监控docker stats和top状态 dcoker监控首先需要将docker的name拿出来,循环执行docker stats将数据拿出重新排序后数值换算追加到/tmp/下以name命名 [root@localhost scripts]# cat docker_host_status.sh #!/bin/bash 1. ---------------------------------------------------------- 云计算 2023-07-15 贤蛋大眼萌
Zabbixcompleteworks之Zabbix基础安装配置 我花了一点时间整理了一套zabbix的安装脚本,便于部署和安装。它包括了zabbix-server,zabbix-agent的安装,初始化配置,在4.0之后加入了docker-compose,随后的server端都采用了docker安装。在最新的更新中,引入了elasticsearch:6.1.4。 git地址:https://github.com/marksugar/zabbix-complet 云计算 2023-07-15 向阳逐梦
dockercompose构建postgresql12主从 postgresql的同步流复制,我们就简单叫主库和备库来表示两个不同的角色,我将分享主从的搭建过程 为了减少在安装上的繁琐流程,我将使用docker镜像,使用docker-compose编排 Docker-Compose version: v2.16.0 image: registry.cn-zhangjiakou.aliyuncs.com/marksugar-k8s/postgres:12.1 数据运维 2023-07-15 大白菜程序猿
在 Koa 服务中构建 RESTful api 新增 当前代码的 github 仓库地址 koa-tutorial https://github.com/egolink0/koa-tutorial.git 导引 通过一步步的练习,最后你可以通过本文对以下方面有基本的了解。 了解 RESTful api 规范 了解 koa 如何构建 CRUD 接口 了解 docker 如何起一个 mysql 服务 了解 knex 如何在 koa 系统中与数据库连 开发运维 2023-07-14 醒在深海的猫
Prometheus+CAdvisor 监控容器 简介 现如今,容器越来越普及,将服务迁移到容器成为越来越多公司的选择,所以对于容器的监控,也就变成必不可少的技能了。 目前常见的容器产品中,Docker占据了绝对的统治地位,所以这篇博客简单介绍一下通过Prometheus搭建容器监控的方案。 1. CAdvisor工具 CAdvisor是Google开源的一款用于监控和展示容器运行状态的可视化工具。其可以搜集到机器上所有运行的容器信息,还提 开发运维 2023-07-14 大白菜程序猿
Docker 多架构镜像介绍和最佳实践 更多云原生相关技术分享请关注公众号:CloudNativeOps ; 添加微信 GoOps888,备注 '加群' 可加入云原生技术交流群。 一、多架构镜像介绍 在 Docker 中,同一个 Docker 镜像可以在不同的平台上运行,例如在 x86、ARM、PowerPC 等不同的 CPU 架构上。 为了支持这种多平台的镜像构建和管理,Docker 在 17.06 版本时引入了 Manifest 的 开发运维 2023-07-14 Escape
基于Spring Boot的Docker部署实践 基于Spring Boot的Docker部署实践 在云计算和微服务架构日益普及的今天,Docker已成为一种主流的应用部署方式。本文将详细介绍如何将基于Spring Boot的项目部署到Docker容器中。我们将从Spring Boot项目的创建开始,逐步介绍Docker的基本概念、Dockerfile的编写、镜像的构建与发布以及容器的运行与管理等方面的内容。文章最后,我们还将探讨Docker在持 开发运维 2023-07-14 Escape
Docker 完成 MySQL 数据库主从配置经验教程 用 docker 进行数据库主从配置,因为我有这个需求,而在网上搜索后发现没有满足我需求的相关实践文档,有的是一些零零碎碎的文档,而且在参照这些文档进行部署的时候我还踩了许多坑。 因此根据我自己部署成功的经验,我写了这个文档。 使用 docker 自然就需要有 docker 环境,当然 docker 的镜像在国内访问比较慢,建议使用国内的源。 构建 DockerFile 我们的工作是在 Mysql 数据运维 2023-07-12 宇宙之一粟
Docker持久化存储和数据共享结构图 有些容器会自动产生一些数据,为了不让数据随着container的消失而消失,保证数据的安全性。例如:数据库容器,数据表的表会产生一些数据,如果我把container给删除,数据就丢失。为了保证数据不丢失,这就有了Volume的存在。 Data Volume 结构图 Docker持久化数据的方案 基于本地文件系统的Volume。可以再执行Docker create或Docker run时,通过-v参 数据运维 2023-07-12 张二河
Docker Compose 搭建 MySQL 数据库主从复制实例 由于是单机同时运行主从实例,仅用于开发环境或学习主从复制配置。 项目地址 github.com/TomCzHen/my… 文件结构 ├── docker-compose.yaml ├── env │ ├── base.env │ ├── master.env │ └── node.env ├── .env ├── init-db-sql │ ├── init-master.sh │ ├── ini 数据运维 2023-07-12 泡泡