zoukankan      html  css  js  c++  java
  • CentOS下利用Docker部署Surging

    1. 安装Centos, 配置固定ip
    配置文件地址vi /etc/sysconfig/network-scripts/ifcfg-ens33
    ```
    TYPE=Ethernet
    PROXY_METHOD=none
    BROWSER_ONLY=no
    BOOTPROTO=static
    IPADDR=192.168.0.101
    NETMASK=255.255.255.0
    GATEWAY=192.168.0.1
    DNS1=192.168.0.1
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    IPV6_ADDR_GEN_MODE=stable-privacy
    NAME=ens33
    UUID=d197ec13-2ec7-42a6-8899-2bd0bacfc2ca
    DEVICE=ens33
    ONBOOT=yes
    ZONE=public
    ```

    备注:配置防火墙

    systemctl stop firewalld.service #停止firewall
    systemctl disable firewalld.service #禁止firewall开机启动


    2. 安装Docker(自己网上找)

    ```
    # 定义安装版本
    export docker_version=17.03.2

    # step 1: 安装必要的一些系统工具
    sudo apt-get update
    sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common bash-completion

    # Step 2: 更新并安装 Docker-CE
    sudo apt-get -y update
    version=$(apt-cache madison docker-ce|grep ${docker_version}|awk '{print $3}')

    # --allow-downgrades 允许降级安装
    sudo apt-get -y install docker-ce=${version} --allow-downgrades

    # 设置开机启动
    sudo systemctl enable docker
    ```
    3.安装Rancher

    ```
    # 下载镜像
    docker pull rancher/server
    #运行实例
    docker run -d --restart=always -p 8080:8080 rancher/server

    ```
    备注:
    1. 添加主机时直接拷贝生成的命令运行即可
    2. UI地址http://192.168.0.101:8080


    4. 安装Rabbitmq

    ```
    #下载镜像
    docker pull rabbitmq:management
    #运行实例
    docker run -d --name rabbitmq --publish 5672:5672 --publish 4369:4369 --publish 25672:25672 --publish 15671:15671 --publish 15672:15672 abbitmq:management
    ```
    备注:UI地址http://192.168.0.101:15672
    5. 安装Consul

    ```
    #获取镜像
    docker pull consul

    #运行实例node1的server
    docker run -d --name node1 -e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}' consul agent -server -node=node1 -bootstrap-expect=1

    #获取node1的ip
    JOIN_IP="$(docker inspect -f '{{.NetworkSettings.IPAddress}}' node1)"

    #运行实例node2的server
    docker run -d --name node2 -e 'CONSUL_LOCAL_CONFIG={"skip_leave_on_interrupt": true}' consul agent -server -node=node2 -join $JOIN_IP

    #运行带ui的client
    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

    #查看节点
    docker exec node1 consul members
    ```
    备注:
    1.运行带UI命令时如果报错就先删除运行的容器node11,然后重新启动系统后再运行命令
    2.UI地址http://192.168.0.101:8500

    6.安装dotnetcore 2.1 runtime


    ```
    docker pull microsoft/dotnet:2.1-runtime

    #此命令会进入容器内,Ctrl+P+Q 退出 
    docker run -it microsoft/dotnet:2.1-runtime
    #
    ```


    7.获取Surging源码,发布服务代码并上传

    ```
    #发布代码
    dotnet publish -r centos.7-x64 -c release

    #创建镜像
    docker build -t surgingserver .

    #运行服务
    docker run --name surgingserver --env Mapping_ip=192.168.0.101 --env Mapping_Port=98 --env RootPath=/webapps/surgingserver/publish --env Register_Conn=192.168.0.101:8500 --env EventBusConnection=172.17.0.4 --env Surging_Server_IP=0.0.0.0 -v /webapps/surgingserver/publish:/webapps/surgingserver/publish -it -p 98:98 surgingserver
    ```

    备注:
    ip换成自己系统对应的ip
    RootPath为上传的代码路径
    EventBusConnection为MQ的docker分配的ip,可以再Rancher看到
    8.发布网关代码

    ```
    #发布代码
    dotnet publish -r centos.7-x64 -c release

    #创建实例
    docker build -t surgingapi .

    #运行网关容器
    docker run --name surgingapi -it -p 729:729 --env Register_Conn=192.168.0.101:8500 surgingapi
    ```
    备注:
    1. 网关地址http://192.168.0.101:729

  • 相关阅读:
    简单的模板解析函数
    HTML通过事件传递参数到js 二 event
    HTML通过事件传递参数到js一
    通过this获取当前点击选项相关数据
    LeetCode 20. 有效的括号(Valid Parentheses)
    LeetCode 459. 重复的子字符串(Repeated Substring Pattern)
    LeetCode 14. 最长公共前缀(Longest Common Prefix)
    LeetCode 168. Excel表列名称(Excel Sheet Column Title)
    LeetCode 171. Excel表列序号(Excel Sheet Column Number) 22
    LeetCode 665. 非递减数列(Non-decreasing Array)
  • 原文地址:https://www.cnblogs.com/Zhupeng0929/p/10273540.html
Copyright © 2011-2022 走看看