Rancher搭建

首先rancher需要安装了docker的linux环境,我的系统版本为

在docker的基础上启动rancher服务器,Rancher 服务器是一个 Docker image,所以其软件本身不需要安装,只需要执行 Docker 命令下载并且成功运行 Docker 服务器镜像即可。

执行命令 sudo docker run -d --restart=always -p 8080:8080 rancher/server

启动容器并指定端口,如果没有rancher/server镜像会自动下载。执行完成后查看镜像与容器运行情况:

以上步骤完成后,查看本机的ip地址,我的地址为192.1688.1.109,在浏览器输入http://ip:8080/,登录到rancher官网,为安全起见,设置管理账户

然后进行添加主机操作,根据网站指引操作,生成一条命令,在docker中运行

$ sudo docker run --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.5 http://192.168.1.109:8080/v1/scripts/9F78F0DF10BCF4216AC7:1483142400000:hSv7KrbGnhQy3IJmJWYhWvxemF4

会自动下载rancher/agent镜像

当在宿主机中运行完成后,网站中会显示成功添加主机

Rancher的环境

Environment在Rancher中被定义为主要用于容器编排和管理的环境,比如Dev或者TEST或者PROD环境等等。目前Rancher支持如下四种:Cattle/Kubernetes/Mesos/Swarm, Cattle是Rancher自己内置的缺省的编排环境,缺省的Default的即为Cattle类型的。

添加stack、添加、升级service、添加负载均衡、外部服务、服务别名、服务的端口绑定、服务链接、环境变量、健康检查等

在这里添加stack:myapp。为其添加服务nginx,镜像为nginx,暴露端口8888。

然后添加负载均衡,分担nginx服务的流量,在这里目标服务的端口需为镜像内部80端口,若设置为暴露出的8888端口则访问失败

通过负载均衡暴露出的端口90访问结果如下:

再添加外部服务,指向第一个nginx服务,并连接其暴露出的端口8888

然后再添加一个负载均衡,指向外部服务,暴露91端口:

访问91端口,得到同样的访问结果:

在这里注意负载均衡与外部服务的区别,负载均衡需要配置服务自身的端口,而外部服务需要为其配置其所链接服务所暴露出的端口

关于环境变量、服务链接可见接下来的部署web项目时的具体操作。

Web应用部署

添加stack webapp

为其添加服务classnet,其中为web内容以及服务器tomcat。服务镜像来自之前完成web容器化时自己所制作镜像,该镜像以上传至阿里云私有仓库。所以在添加该服务前,首先要将私有镜像仓库添加到rancher的镜像仓库:

然后添加classnet服务,暴露端口8899,通过该端口访问tomcat,测试是否添加成功:

然后添加数据库服务,在这里选择mysql镜像,除了配置端口,还需要为数据库设置环境变量,声明数据库访问的密码MYSQL_ROOT_PASSWORD与数据库名称MYSQL_DATABASE,这两个环境变量的具体值需要与web项目中的配置保持一致,具体环境变量的配置可以通过查看mysql官方镜像的说明:

再返回classnet服务,升级服务,设置服务连接,连接至mysql服务:

为网站添加负载均衡,暴露端口10086:

通过负载均衡所暴露端口访问网站主页:

rancher初级(搭建+基本操作+web应用部署)的更多相关文章

  1. Nginx + FastCGI 程序(C/C++) 搭建高性能web service的Demo及部署发布

       FastCGI编程包括四部分:初始化编码.接收请求循环.响应内容.响应结束循环. FCGX_Request request; FCGX_Init(); ); FCGX_InitRequest(& ...

  2. 【入门篇】Nginx + FastCGI 程序(C/C++) 搭建高性能web service的Demo及部署发布

    http://blog.csdn.net/allenlinrui/article/details/19419721 1.介绍     Nginx - 高性能web server,这个不用多说了,大家都 ...

  3. office web apps 部署-搭建office web apps服务器

    二.搭建office web apps服务器 相关文件可以去焰尾迭分享的百度网盘下载,下载地址:http://pan.baidu.com/s/1o6tCo8y#path=%252Foffice%252 ...

  4. LNMP动态网站架构及web应用部署,搭建discuz论坛

    1)部署Nginx 实验tar安装包可找本人拿记得点+关注,感谢亲们支持,评论拿包 systemctl stop firewalld iptables -F setenforce 0 1)安装支持软件 ...

  5. 尹吉峰:使用 OpenResty 搭建高性能 Web 应用

    2019 年 8 月 31 日,OpenResty 社区联合又拍云,举办 OpenResty × Open Talk 全国巡回沙龙·成都站,原贝壳找房基础架构部工程师尹吉峰在活动上做了<使用 O ...

  6. Eclipse 搭建 Maven Web项目

    第一步:安装JDK: 第二步:安装Eclipse: 第三步:安装tomcat7: 第四步:安装maven插件: 4.1 下载maven:http://maven.apache.org/download ...

  7. 使用 Docker 搭建 Java Web 运行环境

    黄勇的博客 Docker 是 2014 年最为火爆的技术之一,几乎所有的程序员都听说过它.Docker 是一种“轻量级”容器技术,它几乎动摇了传统虚拟化技术的地位,现在国内外已经有越来越多的公司开始逐 ...

  8. 转:使用 Docker 搭建 Java Web 运行环境

    原文来自于:http://www.codeceo.com/article/docker-java-web-runtime.html Docker 是 2014 年最为火爆的技术之一,几乎所有的程序员都 ...

  9. 使用MyEclipse搭建java Web项目开发

    转自:http://blog.csdn.net/jiuqiyuliang/article/details/36875217 首先,在开始搭建MyEclipse的开发环境之前,还有三步工具的安装需要完成 ...

随机推荐

  1. Redis 一个很诡异的问题(部署)

    使用Redis并用window服务的方式 运行时.突然报错  在启动进程意外中止 解决方案: 调试了很久 发现居然是在 Logfile的配置中的问题. 错误的logfile logfile " ...

  2. Backbone.js 0.9.2 中文解释

    // Backbone.js 0.9.2 // (c) 2010-2012 Jeremy Ashkenas, DocumentCloud Inc. // Backbone may be freely ...

  3. Oracle动态执行表不可访问

    在scott 用户下,执行查询语句是出现"Oracle动态执行表不可访问" 经查,是因为用户权限不够所致,修改scott用户权限语句如下: grant select on V_$s ...

  4. JS判断键盘是否按的回车键并触发指定按钮点击操作

    document.onkeydown = function (e) { if (!e) e = window.event; if ((e.keyCode || e.which) == 13) { va ...

  5. [.net 多线程] Interlocked实现CAS操作

    Interlocked:为多个线程共享的变量提供原子操作. Interlocked.Increment(ref value) 数值加一(原子性操作) Interlocked.Decrement(ref ...

  6. 基于verilog的FFT算法8点12位硬件实现

    FFT算法8点12位硬件实现 (verilog) 1 一.功能描述: 1 二.设计结构: 2 三.设计模块介绍 3 1.蝶形运算(第一级) 3 2.矢量角度旋转(W) 4 3.CORDIC 结果处理 ...

  7. php 递归删除目录

    /* * 递归删除目录 */ function deletedir($dir){ if($handle = @opendir($dir)){ while($file = readdir($handle ...

  8. 单链表倒数第K个节点的查找和显示

    1.使用一个固定长度队列装链表段,当遍历到链表根时,返回队列头元素. class Node{ int value; Node next; public Node(int value){ this.va ...

  9. java并发编程(更新)

    概念理解:①串行程序②并发程序: 线程安全问题: 同一进程中的所有线程共享进程中的内存地址空间.如果没有明确的同步机制来管理共享数据,那么当一个线程正在使用某个变量时,另一个线程可能同时访问这个变量, ...

  10. java 笔记整理

    在19寒假对java基础进行自学,总结的笔记整理出来 ==================================================== 排序查找 冒泡排序法1.一共会比较数组元 ...