surging+CentOS7+docker+rancher2.0 菜鸟部署运行笔记

原文: surging+CentOS7+docker+rancher2.0 菜鸟部署运行笔记

版权声明:喜欢的就转载/收藏吧 https://blog.csdn.net/q5934/article/details/82661250

目录html

 

准备工做node

开始干活linux

1.从github 获取surging源码git

2.发布Surging.ApiGateway网关,github

3.安装 consuldocker

 4.安装rabbitMQjson

5.安装rancher 2.0 (咱们尝个鲜)bootstrap

6.建立rancher本地集群,并运行surging网关服务centos

接来下实现surging的服务。。浏览器


准备工做

开发环境  Visual Studio 2017 15.5

运行环境  虚拟机CentOS 7+Docker+Rancher 2.0+Consul+RabbmitMQ

项目下载地址  https://github.com/dotnetcore/surging

CentOS 7安装 Docker教程 https://docs.docker.com/install/linux/docker-ce/centos/

DockerHub 注册一个帐号用于管理咱们本身的镜像,rancher里面的镜像要从这里面下载 https://hub.docker.com/

开始干活

1.从github 获取surging源码

将项目拉下来,用VS2017打开生成解决方案,生成没毛病就继续下一步,打开 Surging.ApiGateway 项目的Program.cs  

接下来打开 Surging.ApiGateway下的 Configs文件夹下的gatewaySettings.json 文件,这个是网关的配置文件下面是重要的两个配置信息。

2.发布Surging.ApiGateway网关,

要把Dockerfile 文件也添加去用于docker build。我这边是经过SecureCRT 将发布的包上传到虚拟机上。

一.在使用SecureCRT上传下载以前须要给服务器安装lrzsz

yum -y install lrzsz (注:参数-y中"y"的意思是:当安装过程提示选择所有为"yes")

2、命令szrz的使用方法:

rz中的r意为received(接收),输入rz时、意为服务器接收文件,既将文件从本地上传到服务器。

sz中的s意为send(发送),输入sz时、意为服务器要发送文件,既从服务器发送文件到本地,或是说本地从服务器上下载文件。

注:不管是send仍是received,动做都是在服务器上发起的。

最好是把发布程序打包成zip 上传,这样不用纠结子文件夹不能上传问题,而后在虚拟机上进行解压。

    在 Dockerfile 文件所在目录执行(就是发布程序的根目录):

$ docker build -t hanke/surging:v0.9 .      
--hanke/surging:v0.9这里的hanke是个人dockerhub 的帐号,请根据本身状况进行修改。

     //此命令是构建一个本地镜像在docker里面 dockerfile 具体的细节能够参考这个老铁的  Docker Dockerfile 定制镜像

构建好之后执行

$ docker images   //查看本地全部镜像

看到咱们的本地镜像后说明镜像已经构建成功过,接下将构建好的镜像上传到 docker hub里面以便使用。

先登陆docker hub 执行

$ docker login  --而后输入帐号密码登陆。

$ docker push  hanke/surging:v0.9  
--把镜像上传到本身的dockerhub 里面,登陆docker hub 能够看到本身上传的镜像了。

  3.安装 consul

$ docker pull consul  //下载consul 镜像

 这位老铁的consul 服务发现介绍的还行 consul 服务发现 集群 docker 版

我提炼了一下 执行一下命令就好了,作两个consul服务小集群,嘻嘻

consul 服务端 node1

$ docker run -d --name node1 -e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}' 
        \consul agent -server  -node=node1 -bootstrap-expect=2  
--(这个2 表明集群至少两个consul服务器才能正常启动,咱们暂且就弄两个吧)

获取 node1 的IP

$ JOIN_IP="$(docker inspect -f '{{.NetworkSettings.IPAddress}}' node1)"

consul 服务端 node2

$ docker run -d --name node2 -e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}'
         \consul agent -server  -node=node2 -join $JOIN_IP

consul 客户端node11 带UI 

$ docker run -d --name node11 -p 8400:8400 -p 8500:8500 -p 8600:53/udp 
    \-e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}' 
    \consul agent -ui -node=node11 -client=0.0.0.0 -join $JOIN_IP

浏览器打开 CentOS 7 IP:8500 

--CentOS 7 查看本机IP
$ ip addr

效果以下,里面有两个节点在里面了

  4.安装rabbitMQ

$ docker pull rabbitmq:3-management  
--拉取rabbitmq的镜像,后面不带management,启动rabbitmq后是没法打开管理界面的,因此咱们要下载带management插件的rabbitmq.
$ docker run -d --name rabbitmq 
\--publish 5671:5671  
\--publish 5672:5672 
\--publish 4369:4369 
\--publish 25672:25672 
\--publish 15671:15671 
\--publish 15672:15672   rabbitmq:3-management  

--这个是使用的默认帐号密码 guest   guest

浏览器打开CentOS 7 ip:15672

5.安装rancher 2.0 (咱们尝个鲜)

$ docker pull rancher/rancher  
--拉取rancher 2.x  官方文档 https://rancher.com/docs/rancher/v2.x/en/

$ docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher:latest    
--运行单节点rancher

浏览器打开 CentOS7 IP:80  2.x 是经过https 链接的继续访问便可,设置好admin的 密码登陆进去。

效果图以下,右下角能够设置为中文

至此环境已经搭建完毕,开始建立surging网关吧,期待ing。

6.建立rancher本地集群,并运行surging网关服务

     1.点击添加集群 选择

     2.设置一个集群名称 而后一切默认,点击 下一步 ,  主机角色所有勾上 再把命令在docker 里面执行。

初次执行时间有点长须要下载相关镜像run起来  成功后 ,点击完成就能看到咱们的本机集群了,兴奋ing。。

3.建立surging网关服务 ,点击 default.

后点击 镜像名称就是 刚刚咱们上传的 镜像名称 个人是 hanke/surging:v0.9,请根据本身的镜像名称填写。

点击启动,祈祷吧少年。成功启动效果以下

在浏览器 输入 CentOS7 ip:30000 查看网关界面

至此surging 网关已经启动成功!!!!

接来下实现surging的服务。。

相关文章
相关标签/搜索