Docker Compose

Docker实战学习笔记(附源码)

蓝咒 提交于 2021-02-06 01:19:07
出品|MS08067实验室(www.ms08067.com) 本文作者: 大方子 (Ms08067实验室核心成员) 大方子 微信(欢迎骚扰交流): 目录 守护方式启动容器 容器交互 开始、停止、重启、查看容器输出、查看当前的容器 容器中执行命令 命名空间 容器标识 检查容器元数据 容器的连接 容器的环境变量 只读文件系统 持久化容器 使用init和supervisor进程维持容器的运行状态 清理容器 Docker Hub的使用 Docker 镜像 持久化存储和卷间状态共享 Docker的网络 closed容器 Bridged容器 自定义DNS解析 开放对容器的访问 跨容器通信 Joined容器 Open容器 跨容器依赖 容器链接 Docker Compose docker-compose 命令 在镜像中打包软件 从容器构建镜像 审查文件系统的改动 可配置的镜像属性 镜像体积和层数限制 导出和导入压缩文件系统 构建自动化和高级镜像设置 指令解析 软件分发 帮助 # 显示Docker工具的基本用法 docker help # 显示指定命令的使用方法 docker help cp 守护方式启动动容器 # 以守护的方式运行(后台运行) # ‐‐detach 或 ‐d docker run ‐‐detach ‐‐name web nginx:latest 容器交互 # ‐

使用Harbor搭建企业级docker仓库

Deadly 提交于 2021-02-04 11:38:53
Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全、标识和管理等,扩展了开源Docker Distribution。作为一个企业级私有Registry服务器,Harbor提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜像的效率。Harbor支持安装在多个Registry节点的镜像资源复制,镜像全部保存在私有Registry中, 确保数据和知识产权在公司内部网络中管控。另外,Harbor也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。 2.Harbor特性 基于角色的访问控制 :用户与Docker镜像仓库通过“项目”进行组织管理,一个用户可以对多个镜像仓库在同一命名空间(project)里有不同的权限。 镜像复制 :镜像可以在多个Registry实例中复制(同步)。尤其适合于负载均衡,高可用,混合云和多云的场景。 图形化用户界面 :用户可以通过浏览器来浏览,检索当前Docker镜像仓库,管理项目和命名空间。 AD/LDAP 支持 :Harbor可以集成企业内部已有的AD/LDAP,用于鉴权认证管理。 审计管理 :所有针对镜像仓库的操作都可以被记录追溯,用于审计管理。 国际化 :已拥有英文、中文、德文、日文和俄文的本地化版本

漏洞复现: Apache Druid 远程代码执行漏洞 (CVE-2021-25646)

匆匆过客 提交于 2021-02-04 09:00:53
作者:Ja0k 本文为作者投稿,Seebug Paper 期待你的分享,凡经采用即有礼品相送! 投稿邮箱:paper@seebug.org 一.漏洞概要 Apache Druid 是用Java编写的面向列的开源分布式数据存储,旨在快速获取大量事件数据,并在数据之上提供低延迟查询。 Apache Druid 默认情况下缺乏授权认证,攻击者可以发送特制请求,利用Druid服务器上进程的特权执行任意代码。 二.影响范围 影响版本: Apache Druid < 0.20.1 安全版本: Apache Druid 0.20.1 三.环境搭建 https://github.com/apache/druid/ https://druid.apache.org/docs/latest/tutorials/index.html 下载0.19版本 https://github.com/apache/druid/releases/tag/druid-0.19.0 解压 cd druid-druid-0.19.0-rc1\distribution\docker docker-compose up -d 打开 http://192.168.123.10:8888 四.漏洞复现 Poc1:通用 POST /druid/indexer/v1/sampler HTTP/1.1 Host: 192.168.123

Docker 私有仓库搭建

北战南征 提交于 2021-02-02 00:59:29
文章首发于公众号《程序员果果》 地址: https://mp.weixin.qq.com/s/tBh6kT4I5XniCoFEcn7W9A 一、简介 在 Docker 中,当我们执行 docker pull xxx 的时候 ,它实际上是从 registry.hub.docker.com 这个地址去查找,这就是Docker公司为我们提供的公共仓库。在工作中,我们不可能把企业项目push到公有仓库进行管理。所以为了更好的管理镜像,Docker不仅提供了一个中央仓库,同时也允许我们搭建本地私有仓库。这一篇介绍registry、harbor两种私有仓库搭建。 二、registry 的搭建 1. 搭建 Docker 官方提供了一个搭建私有仓库的镜像 registry ,只需把镜像下载下来,运行容器并暴露5000端口,就可以使用了。 docker pull registry:2 docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --name myregistry registry:2 Registry服务默认会将上传的镜像保存在容器的/var/lib/registry,我们将主机的/opt/registry目录挂载到该目录,即可实现将镜像保存到主机的/opt/registry目录了。 浏览器访问 http://127.0

成功的把树莓派3B+的 docker-compose 升级到 1.28

一曲冷凌霜 提交于 2021-02-01 12:54:00
起因 树莓派里 apt 下载的 docker-compose 最新版也只是 1.8.2 版本 奈何执行 docker-compose.yaml 文件又是 version: "3" 版本的 猜测之所以能升成功,有一种巧合在里面,我是不小心把python2.7 给删了,又安装上了,但 /usr/bin/python 用的是3.5版本的 解决 官方安装脚本为 sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose 但是在树莓派 3B+ 上,如果执行echo命令查看此链接地址 echo "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" 结果 https://github.com/docker/compose/releases/download/1.25.4/docker-compose-Linux-armv7l

基于 Docker 安装 Jenkins

蓝咒 提交于 2021-02-01 09:00:56
docker-compose.yml Jenkins 是一个简单易用的持续集成软件平台,我们依然采用 Docker 的方式部署,docker-compose.yml 配置文件如下: version: '3.1' services: jenkins: restart: always image: jenkinsci/jenkins container_name: jenkins ports: # 发布端口 - 8080:8080 # 基于 JNLP 的 Jenkins 代理通过 TCP 端口 50000 与 Jenkins master 进行通信 - 50000:50000 environment: TZ: Asia/Shanghai volumes: - ./data:/var/jenkins_home 安装过程中会出现 Docker 数据卷 权限问题,用以下命令解决: chown -R 1000 /usr/local/docker/jenkins/data 启动 docker-compose up -d 来源: oschina 链接: https://my.oschina.net/u/4396705/blog/4939460

5 分钟搭建 Node.js 微服务原型

99封情书 提交于 2021-01-30 08:32:03
每日前端夜话 第291篇 翻译: 疯狂的技术宅 作者:Sergey Kravchenko 来源:medium 正文共:1099 字 预计阅读时间:5 分钟 微服务已成为在 Node.js 中构建可扩展且强大的云应用的主流方法。同时也存在一些门槛,其中一些难点需要你在以下方面做出决策: 组织项目结构。 将自定义服务连接到第三方服务(数据库,消息代理等) 处理微服务之间共享的代码。 将项目容器化。 在本地运行和调试,然后将其部署到云中。 SMF 框架是开箱即用的解决方案: https://github.com/krawa76/smf 让我们看看它如何帮你创建和部署微服务原型而 无需编写任何代码。 创建项目 安装框架,创建一个新项目并 cd 到项目目录: 1 $ npm install -g sokyra-microservice-factory 2 $ smf new test -stack 3 $ cd test -stack 带有演示服务的样板代码已生成,我们可以轻松地运行该项目: 1 $ smf up 这将生成 Docker工件(docker-compose 和环境变量文件),构建映像并在本地运行容器: docker-compose 日志 如果在编辑器中打开项目,则会看到带有 main.ts 模块的自动生成的 demo 服务,该服务在上面的日志中生成了记录。其他的重要文件是

5 分钟搭建 Node.js 微服务原型

岁酱吖の 提交于 2021-01-30 07:47:45
5 分钟搭建 Node.js 微服务原型 疯狂的技术宅 前端先锋 翻译:疯狂的技术宅 作者:Sergey Kravchenko 来源:medium 正文共:1099 字 预计阅读时间:5 分钟 微服务已成为在 Node.js 中构建可扩展且强大的云应用的主流方法。同时也存在一些门槛,其中一些难点需要你在以下方面做出决策: 组织项目结构。 将自定义服务连接到第三方服务(数据库,消息代理等) 处理微服务之间共享的代码。 将项目容器化。 在本地运行和调试,然后将其部署到云中。 SMF 框架是开箱即用的解决方案: https://github.com/krawa76/smf 让我们看看它如何帮你创建和部署微服务原型而无需编写任何代码。 创建项目 安装框架,创建一个新项目并 cd 到项目目录: 1$ npm install -g sokyra-microservice-factory 2$ smf new test-stack 3$ cd test-stack 带有演示服务的样板代码已生成,我们可以轻松地运行该项目: 1$ smf up 这将生成 Docker工件(docker-compose 和环境变量文件),构建映像并在本地运行容器: docker-compose 日志 如果在编辑器中打开项目,则会看到带有 main.ts 模块的自动生成的 demo 服务,该服务在上面的日志中生成了记录

Docker 安装 Jenkins

偶尔善良 提交于 2021-01-29 18:11:27
https://adamtheautomator.com/jenkins-docker/#Running_Jenkins_using_Docker_Compose_with_Volumes 安装 docker-compose sudo curl -L "https://github.com/docker/compose/releases/download/1.28.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose 配置Jenkins docker-compose.yml version: '3.7' services: jenkins: image: jenkins/jenkins:lts privileged: true user: root ports: - 8080:8080 - 50000:50000 container_name: myjenkins volumes: - /var/jenkins_data:/var/jenkins_home - /var

搭建Harbor企业级docker仓库

99封情书 提交于 2021-01-29 09:24:30
一、Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全、标识和管理等,扩展了开源Docker Distribution。作为一个企业级私有Registry服务器,Harbor提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜像的效率。Harbor支持安装在多个Registry节点的镜像资源复制,镜像全部保存在私有Registry中, 确保数据和知识产权在公司内部网络中管控。另外,Harbor也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。 2.Harbor特性 基于角色的访问控制 :用户与Docker镜像仓库通过“项目”进行组织管理,一个用户可以对多个镜像仓库在同一命名空间(project)里有不同的权限。 镜像复制 : 镜像可以在多个Registry实例中复制(同步)。尤其适合于负载均衡,高可用,混合云和多云的场景。 图形化用户界面 : 用户可以通过浏览器来浏览,检索当前Docker镜像仓库,管理项目和命名空间。 AD/LDAP 支持 : Harbor可以集成企业内部已有的AD/LDAP,用于鉴权认证管理。 审计管理 : 所有针对镜像仓库的操作都可以被记录追溯,用于审计管理。 国际化 : 已拥有英文、中文、德文、日文和俄文的本地化版本