Docker 的优势非常明显,尤其是对于开发者来说,它提供了一种全新的软件发布机制。也就是说使用 docker 镜像作为软件产品的载体,使用 docker 容器提供独立的软件运行上下文环境,使用 docker hub 等提供镜像的集中管...
阅读(0) 评论(0)
Compose 是 docker 提供的一个命令行工具,用来定义和运行由多个容器组成的应用。使用 compose,我们可以通过 YAML 文件声明式的定义应用程序的各个服务,并由单个命令完成应用的创建和启动。 Compose 的使用方式...
阅读(4) 评论(0)
笔者在《Jenkins 在声明式 pipeline 中并行执行任务》一文中介绍了如何在声明式 pipeline 中执行并行的任务。前一段时间,Jenkins 发布了 1.3 版的声明式 pipeline(declarative pipe...
阅读(6) 评论(0)
在学习 Linux 系统权限相关的主题时,我们首先关注的基本都是文件的 ugo 权限。ugo 权限信息是文件的属性,它指明了用户与文件之间的关系。但是真正操作文件的却是进程,也就是说用户所拥有的文件访问权限是通过进程来体现的。本文主要介...
阅读(6) 评论(0)
笔者在《Linux ACL 权限》一文中介绍了 Linux ACL 权限的基本用法,本文笔者将尝试探究 ACL 中的基本概念和实现原理,希望能够通过进一步的加深对 Linux 权限系统的理解。说明:本文的演示环境为 ubuntu 16....
阅读(11) 评论(0)
setuid 和 setgid 分别是 set uid ID upon execution 和 set group ID upon execution 的缩写。我们一般会再次把它们缩写为 suid 和 sgid。它们是控制文件访问的权限...
阅读(13) 评论(0)
笔者在前文《理解 docker 容器中的 uid 和 gid》介绍了 docker 容器中的用户与宿主机上用户的关系,得出的结论是:docker 默认没有隔离宿主机用户和容器中的用户。如果你已经了解了 Linux 的 user name...
阅读(17) 评论(0)
默认情况下,容器中的进程以 root 用户权限运行,并且这个 root 用户和宿主机中的 root 是同一个用户。听起来是不是很可怕,因为这就意味着一旦容器中的进程有了适当的机会,它就可以控制宿主机上的一切!本文我们将尝试了解用户名、组...
阅读(14) 评论(0)
Linux 系统中文件的 ugo 权限是 Linux 进行权限管理的基本方式。本文将介绍 ugo 权限的基本概念。说明:本文的演示环境为 ubuntu 16.04。 文件的所有者和组 Linux 文件的 ugo 权限把对文件的访问者划分...
阅读(21) 评论(0)
Dockerfile 中提供了两个非常相似的命令 COPY 和 ADD,本文尝试解释这两个命令的基本功能,以及其异同点,然后总结其各自适合的应用场景。 Build 上下文的概念 在使用 docker build 命令通过 Dockerf...
阅读(20) 评论(0)
Nginx 自己没有处理日志的滚动问题,它把这个球踢给了使用者。一般情况下,你可以使用 logrotate 工具来完成这个任务,或者如果你愿意,你可以写各式各样的脚本完成同样的任务。本文笔者介绍如何滚动运行在 docker 中的 ngi...
阅读(22) 评论(0)
Cgroups 是 linux 内核提供的一种机制,如果你还不了解 cgroups,请参考前文《Linux cgroups 简介》先了解 cgroups。当 Linux 的 init 系统发展到 systemd 之后,systemd 与...
阅读(23) 评论(0)
netfilter 是 Linux 内置的一种防火墙机制,我们一般也称之为数据包过滤机制。iptables 则是一个命令行工具,用来配置 netfilter 防火墙。下图展示了一个带有防火墙的简单网络拓扑结构: 图中的 Linux 主...
阅读(28) 评论(0)
Docker 正在被用在越来越多的场景中,对于不太习惯命令行工具的朋友来说,docker cli 用起来可能会比较吃力。本文笔者将介绍一个功能强大的 docker web 客户端:portainer(岸吊,参考下面插图)。按照 port...
阅读(26) 评论(0)
笔者在前文《Docker 网络之进阶篇》中介绍了 CNM(Container Network Model),并演示了 bridge 驱动下的 CNM 使用方式。为了深入理解 CNM 及最常用的 bridge 驱动,本文将探索 bridg...
阅读(27) 评论(0)
1 2 3 下一页共3页  到第