Docker
菲宇
这个作者很懒,什么都没留下…
展开
-
关于JVM突破Docker内存限制的解决方案及JVM推荐配置
以下参数配置适用于非计算密集型的大部分应用分配内存 堆配置推荐2G -Xmx1344M -Xms1344M -Xmn448M -XX:MaxMetaspaceSize=192M -XX:MetaspaceSize=192M3G -Xmx2048M -Xms2048M -Xmn768M -XX:MaxMetaspaceSize=256M -XX:Met...转载 2019-01-15 14:23:49 · 1619 阅读 · 1 评论 -
使用Salt管理和部署Docker
Salt是一个开源配置管理和远程执行应用,Salt目地是简化中央系统管理和配置的管理。而Docker是一个开源应用自动部署项目,在软件容器中提供附加抽象层和操作系统虚拟化。Docker和Salt都能让裸机服务器和云服务一样使用,Salt提供基础系统,而Docker能包容每个应用,提供微服务功能。假设以下情况: 目标: 很多主机都需要部署Docker容器,而每个主机上有很多容器。...转载 2018-08-08 16:57:41 · 949 阅读 · 0 评论 -
docker下搭建MySQL+php-fpm+nginx容器环境
准备镜像我使用的centos系统,docker-ce最新版本。先准备好三个镜像docker pull mysql:5.7docker pull php:5.60-fpmdocker pull nginx:latest注意,mysql和php不要使用最新版本,坑很多。一、构建mysql容器docker run -d -p 3306:3306 -e MYSQL_...原创 2018-08-03 15:18:39 · 6139 阅读 · 2 评论 -
Docker下构建centos7容器使用systemctl命令
第一步,拉去centos7镜像docker pull centos:latest第二步,构建centos容器docker run -tid -p 80:80 -p 22:22 --privilaged --name centos-2 centos:latest /usr/sbin/init第三步,进入到容器中docker exec -it centos-2 bash检...原创 2018-08-14 21:07:55 · 5071 阅读 · 2 评论 -
zabbix自动发现监控docker中的容器
说明第一种方案,借助docker的python版的api,然后通过自己封装自定义脚本来做,稍微麻烦点,但是可以达到个人自定义的效果。第二种借助已经封装好的模板来做,简单省事情,不过功能有限,更多功能还是需要自己开写脚本开发。开始配置安装模块docker-pypip install docker-py具体用法参见:https://docker-py.readthedocs.io/en/...原创 2018-06-23 17:31:18 · 7809 阅读 · 1 评论 -
Docker实战之三:zabbix自定义监控项
机器部署情况一览总的来说,有四台机器,各自的功能如下: a. 假设有一个机器在运行web应用,容器是tomcat,这个应用有个接口http://localhost:8080/zabbixcustomitemdemo/count,可以返回最近一分钟的某个业务量(例如网站访问次数);b. 有一台机器安装了zabbix agent,作为自定义监控项的载体; c. 有一台机器安装了zabb...转载 2018-06-23 20:15:57 · 759 阅读 · 0 评论 -
Docker实战之二:zabbix监控其他机器
部署情况假设实际项目中我们有两台应用服务器,为了监控它们,我们要在上面分别安装zabbix-agent服务,然后通过配置让它们与zabbix server连接,所有监控数据和监控配置数据都被zabbix server保存在mysql中,部署情况如下图:真实场景中是在应用服务器上安装zabbix agent服务,但是安装agent的过程和步骤不是本次实践的重点,为了快速体验服务本文使用了...转载 2018-06-23 20:16:05 · 3331 阅读 · 0 评论 -
Docker下实战之一:搭建zabbix监控平台
创建docker-compose.yml文件首先创建一份docker-compose.yml文件,内容如下:version: '2'services: zabbix-mysql: image: daocloud.io/library/mysql:8 container_name: zabbix-mysql environment: - MYSQ...转载 2018-06-23 20:16:15 · 6384 阅读 · 3 评论 -
ansible安装docker
首先配置好docker安装的yum源wget -P /etc/yum.repos.d/ https://download.docker.com/linux/centos/docker-ce.repodocker.yml- hosts: node remote_user: root tasks: - name: setup yum-utils yum:...原创 2018-08-09 11:34:15 · 2102 阅读 · 0 评论 -
Rancher简介与安装
仓库地址:https://hub.docker.com/r/rancher/server/官网:https://rancher.com/docs:https://rancher.com/docs/rancher/latest/zh/目前Rancher只支持Linux,不支持Windows和Macos简介Rancher是一个开源的企业级容器管理平台。通过Rancher,企业再也不必自己...原创 2018-07-27 09:12:43 · 19380 阅读 · 1 评论 -
Docker 部署spring web项目
1.项目打包为war包 2.启动一个tomcat容器,具体如下:root@iZuf6axmuekh1n14dwcufmZ:~# docker ps -aCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESf3b0f76293f9 tomcat:latest "catalina.sh run" 8 hours ago Up ...转载 2018-09-18 21:22:46 · 2052 阅读 · 0 评论 -
Docker 使用 Supervisor 来管理进程
Docker容器在启动的时候开启单个进程,比如,一个 ssh 或者 apache 的 daemon 服务。但我们经常需要在一个机器上开启多个服务,这可以有很多方法,最简单的就是把多个启动命令放到一个启动脚本里面,启动的时候直接启动这个脚本,另外就是安装进程管理工具。本小节将使用进程管理工具 supervisor 来管理容器中的多个进程。使用Supervisor可以更好的控制、管理、重启我们希望...转载 2018-07-16 09:18:18 · 9769 阅读 · 0 评论 -
Docker 创建 tomcat/weblogic 集群
安装 tomcat 镜像准备好需要的 jdk、tomcat 等软件放到 home 目录下面,启动一个容器docker run -t -i -v /home:/opt/data –name mk_tomcat ubuntu /bin/bash这条命令挂载本地 home 目录到容器的 /opt/data 目录,容器内目录若不存在,则会自动创建。接下来就是tomcat 的基本配置,jdk 环境变量设置好...转载 2018-07-16 09:17:33 · 885 阅读 · 0 评论 -
Docker 容器使用 cgroups 限制资源使用
光有运行环境隔离还不够,因为这些进程还是可以不受限制地使用系统资源,比如网络、磁盘、CPU以及内存 等。关于其目的,一方面,是为了防止它占用了太多的资源而影响到其它进程;另一方面,在系统资源耗尽的时候,linux 内核会触发 OOM,这会让一些被杀掉的进程成了无辜的替死鬼。因此,为了让容器中的进程更加可控,Docker 使用 Linux cgroups 来限制容器中的进程允许使用的系统资源。 1....转载 2018-07-16 09:09:18 · 915 阅读 · 0 评论 -
Docker 使用 Linux namespace 隔离容器的运行环境
1. 基础知识:Linux namespace 的概念 Linux 内核从版本 2.4.19 开始陆续引入了 namespace 的概念。其目的是将某个特定的全局系统资源(global system resource)通过抽象方法使得namespace 中的进程看起来拥有它们自己的隔离的全局系统资源实例(The purpose of each namespace is to wrap a p...转载 2018-07-16 09:08:27 · 993 阅读 · 0 评论 -
Docker 中的 PHP 安装扩展插件
1. PHP 源码为了保证 Docker 镜像尽量小,PHP 的源文件是以压缩包的形式存在镜像中,官方提供了 docker-php-source 快捷脚本,用于对源文件压缩包的解压(extract)及解压后的文件进行删除(delete)的操作。示例:FROM php:7.1-apacheRUN docker-php-source extract \ # 此处开始执行你需要的...原创 2018-08-08 16:58:35 · 8332 阅读 · 0 评论 -
基于docker搭建jumpserver堡垒机
一、环境信息 1、 192.168.137.129 CentOS6.4 kernel版本为 3.10.5-3.el6.x86_64 2、客户机 dev01-04 3、docker镜像 jiaxiangkong/jumpserver_docker:0.3.2二、在129上准备基本环境 [root@localhost ~]# yum install -y epel-r...转载 2019-01-14 22:18:27 · 4526 阅读 · 0 评论 -
docker相关工具
技术栈:1. 构建系统2. 镜像仓库3. 宿主机管理4. 配置管理5. 部署6. 编排7. 日志8. 监控镜像:1. 如果用户像往常一样运行包安装命令,这些永远也用不上的缓存包文件将会永远地成为镜像的一部分。不过,如果用户在同一条安装命令中删除它们,这些文件就会像从未存在过一样。RUN xxxxxxxxxxxxxxxxxxx \&& xxxxxxxxxxx...转载 2018-10-16 09:38:57 · 439 阅读 · 0 评论 -
制作nginx+php的docker镜像及其使用技巧
一、准备工作:使用工具: 1. docker 1.91 版本 2.centos的官方docker镜像作为基础镜像 3.nginx-1.9.12;php-5.5.34;supervisor思路: docker镜像的制作有2种方法,一种是启动一个容器并在容器里操作,再将容器提交为一个新的镜像;一种是写Dockerfile,然后执行dockerfile由docker给我们...转载 2018-10-09 10:43:13 · 2477 阅读 · 0 评论 -
docker搭建分布式服务(haproxy+django+redis)
环境:172.16.71.43 centos7 ,docker version 1.8将要搭建的应用栈包含六个节点,一个代理节点,两个web应用节点,一个主数据库节点和两个从数据库节点. HAProxy负责负载均衡,redis担任数据存储服务,Django负责构建web服务,web服务将访问数据库,并提供http接口供用户访问。 整个项目搭建在一台单机上。从docker hub上下载...转载 2017-05-31 22:46:42 · 838 阅读 · 0 评论 -
docker容器轻量级web管理工具之portainer
一、portainer部署&监控工具项目地址:https://github.com/portainer/portainer二、部署方法:https://portainer.readthedocs.io/en/latest/deployment.html方法1:基于本地容器的部署【推荐】以192.168.2.29这台主机为例。首先需要开启docker的2375端口vi ...原创 2018-05-18 21:47:56 · 2065 阅读 · 0 评论 -
ETCD 简介 + 使用
随着CoreOS和Kubernetes等项目在开源社区日益火热,它们项目中都用到的etcd组件作为一个高可用强一致性的服务发现存储仓库,渐渐为开发人员所关注。在云计算时代,如何让服务快速透明地接入到计算集群中,如何让共享配置信息快速被集群中的所有机器发现,更为重要的是,如何构建这样一套高可用、安全、易于部署以及响应快速的服务集群,已经成为了迫切需要解决的问题。etcd为解决这类问题带来了福音,本文...转载 2018-09-10 09:19:50 · 115555 阅读 · 9 评论 -
docker原理
简介Docker就是虚拟化的一种轻量级替代技术。Docker的容器技术不依赖任何语言、框架或系统,可以将App变成一种 标准化的、可移植的、自管理的组件,并脱离服务器硬件在任何主流系统中开发、调试和运行 简单的说就是,在 Linux 系统上迅速创建一个容器(类似虚拟机)并在容器上部署和运行应用程序,并通过配置文件 可以轻松实现应用程序的自动化安装、部署和升级,非常方便。因为使用了容器,所以可...转载 2018-09-12 21:19:34 · 8100 阅读 · 1 评论 -
基于docker搭建oracle服务器
拉取镜像docker pull wnameless/oracle-xe-11g这个比较耗时,中间可能会中断,继续拉取即可启动实例注意将selinux关掉,不然实例启动失败修改/etc/selinux/config文件,设置为disable# disabled - No SELinux policy is loaded.SELINUX=disable启动d...转载 2018-09-16 11:30:46 · 4851 阅读 · 0 评论 -
docker-compose搭建 Nginx+PHP+MySQL 环境
准备工作 使用阿里云Kelude到 https://code.aliyun.com/ 创建一个项目,如Dockerfile。之后我们把wordpress环境的所有相关Dockerfile及配置文件放置到centosbz目录。使用阿里云镜像仓库阿里云docker镜像仓库地址为 https://cr.console.aliyun.com ,用来存放docker镜像,可以在本地push镜...转载 2018-09-16 11:30:12 · 13114 阅读 · 0 评论 -
docker整理
基本概念、结构Docker的网络模式bridge、host、container other、overlay Docker之操作系统Alpine flannel原理简析及安装 etcd使用入门 jenkins使用方法详解 Docker集群图形化显示工具 Visualizer的安装及注意事项 Docker 容器使用 cgroups 限制资源使用Docker 使用 Linux ...原创 2018-11-21 10:05:18 · 519 阅读 · 0 评论 -
Docker容器安装weblogic详细教程
前提:已经安装后Docker,并且能正常使用(1)获取镜像: docker pull ismaleiva90/weblogic12docker pull #获取镜像ismaleiva90/weblogic #weblogic的镜像,后面没有指定镜像版本就会获取默认的 latest版本(2)生成并启动容器:docker run -d -p 49163:7001 -p 49164:...转载 2018-08-29 19:37:25 · 6376 阅读 · 4 评论 -
Nexus Repository和Docker Registry镜像仓库搭建及使用
Nexus Repository 是搭建maven的镜像的工具之一,在全球范围内使用挺广的。一、Nexus 搭建过程 Nexus 镜像的搭建还是相对简单的,将下载的文件解压到相应的目录下,然后进入./nexus-version/bin/下,启动nexus即可将Nexus Repository运行起来(其中Nexus是基于Jetty来运行的)。或者使用docker run -d -...原创 2018-08-29 14:53:19 · 7939 阅读 · 0 评论 -
三个技巧,将Docker镜像体积减小90%
在构建 Docker 容器时,应该尽量想办法获得体积更小的镜像,因为传输和部署体积较小的镜像速度更快。但RUN语句总是会创建一个新层,而且在生成镜像之前还需要使用很多中间文件,在这种情况下,该如何获得体积更小的镜像呢?你可能已经注意到了,大多数 Dockerfiles 都使用了一些奇怪的技巧:FROM ubuntuRUN apt-get update && apt-...转载 2018-08-29 11:01:03 · 28622 阅读 · 4 评论 -
docker在使用JAVA生产、测试、开发环境的部署流程
一、使用 Docker 搭建 Tomcat 运行环境1 Docker与虚拟机 2 搭建过程2.1 准备宿主系统准备一个 CentOS 7操作系统,具体要求如下:必须是 64 位操作系统建议内核在 3.8 以上通过以下命令查看您的 CentOS 内核:# uname -r2.2 安装Docker# yum install docker可使用以下命令,查...转载 2018-03-14 10:26:26 · 5751 阅读 · 0 评论 -
Docker容器技术主要带来的好处
持续部署与测试。容器消除了线上线下的环境差异,保证了应用生命周期的环境一致性标准化。开发人员使用镜像实现标准开发环境的构建,开发完成后通过封装着完整环境和应用的镜像进行迁移,由此,测试和运维人员可以直接部署软件镜像来进行测试和发布,大大简化了持续集成、测试和发布的过程。跨云平台支持。容器带来的最大好处之一就是其适配性,越来越多的云平台都支持容器,用户再也无需担心受到云平台的捆绑,同时也让应用多平台...原创 2018-03-29 15:07:44 · 35325 阅读 · 0 评论 -
docker三剑客docker-compose、docker-machine、swarm
docker-composehttps://docs.docker.com/compose/overview/docker-machinehttps://docs.docker.com/machine/install-machine/swarmhttps://docs.docker.com/engine/swarm/#feature-highlights原创 2018-05-30 15:12:49 · 1762 阅读 · 0 评论 -
docker下安装gitlab
下载Gitlabsudo docker pull gitlab/gitlab-ce:latest启动Gitlab用下面的命令启动一个默认配置的Gitlab。如果我们只在本机测试使用的话,将hostname替换为localhost。如果需要让外部系统也能访问的话使用外网IP地址。sudo docker run --detach \ --hostname gitlab.ex...原创 2018-07-24 11:05:19 · 671 阅读 · 0 评论 -
Docker+Swarm+Etcd+Portainer搭建集群
简介Swarm是一套较为简单的工具,用以管理Docker集群,使得Docker集群暴露给用户时相当于一个虚拟的整体。Swarm使用标准的Docker API接口作为其前端访问入口,换言之,各种形式的Docker Client(dockerclient in go, docker_py, docker等)均可以直接与Swarm通信。使用etcd发现服务解决swarm内置发现服务的不稳定问题。etcd...原创 2018-07-15 13:06:30 · 1665 阅读 · 0 评论 -
Docker下Nginx+Tomcat实现负载均衡
本文介绍在Docker上配置负载均衡,启动一个nginx容器,三个tomcat容器。结构如下:配置步骤1.在宿主机上安装docker并启动,请参照Centos7安装Docker最新版 2.拉取nginx、tomcat镜像,默认拉取最新的docker pull tomcatdocker pull nginx3.启动tomcat镜像并创建新首页docker run...原创 2018-07-11 19:52:41 · 5323 阅读 · 0 评论 -
Docker之操作系统Alpine
简介图 1.24.2.1 - Apline Linux 操作系统Alpine 操作系统是一个面向安全的轻型 Linux 发行版。它不同于通常 Linux 发行版,Alpine 采用了 musl libc 和 busybox 以减小系统的体积和运行时资源消耗,但功能上比 busybox 又完善的多,因此得到开源社区越来越多的青睐。在保持瘦身的同时,Alpine 还提供了自己的包管理工具 ...原创 2018-07-17 20:49:23 · 65562 阅读 · 4 评论 -
Docker Compose 模板文件
模板文件是使用 Compose 的核心,涉及到的指令关键字也比较多。但大家不用担心,这里面大部分指令跟 docker run 相关参数的含义都是类似的。默认的模板文件名称为 docker-compose.yml,格式为 YAML 格式。version: "3"services: webapp: image: examples/web ports: - ...原创 2018-07-17 20:33:58 · 689 阅读 · 0 评论 -
Docker集群图形化显示工具 Visualizer的安装及注意事项
Visualizer非常直观地显示了Swarm集群中,服务器的状态和服务器上面运行容器的状态。Visualizer会占用8080、5000端口,应该规划好,避免使用这两个端口,我在代码中该成了8081端口。在管理节点上运行以下服务创建命令docker pull dockersamples/visualizer:latestdocker service create \--name=viz...原创 2018-07-17 14:43:22 · 5595 阅读 · 0 评论 -
Docker Swarm搭建集群和常用命令操作
Swarm介绍Docker自诞生以来,其容器特性以及镜像特性给DevOps爱好者带来了诸多方便。然而在很长的一段时间内,Docker只能在单host上运行,其跨host的部署、运行与管理能力颇受外界诟病。跨host能力的薄弱,直接导致Docker容器与host的紧耦合,这种情况下,Docker容器的灵活性很难令人满意,容器的迁移、分组等都成为很难实现的功能点。Swarm是Docker公司在2014...原创 2018-07-09 20:48:44 · 573 阅读 · 0 评论 -
Docker可视化管理工具Shipyard安装与配置
Shipyard简介Shipyard是一个集成管理docker容器、镜像、Registries的系统,它具有以下特点:支持多节点的集成管理可动态加载节点可托管node下的容器环境准备下载镜像# docker pull rethinkdb# docker pull microbox/etcd# docker pull shipyard/docker-proxy# docker pull swarm ...原创 2018-07-09 20:33:44 · 1664 阅读 · 0 评论