• 一、微服务开发——问题点


    一、聚合文档

     真实效果如下

     然后,才可以配置swagger

    {
        "Routes": [
            {
                "DownstreamPathTemplate": "/swagger/userCenter/swagger.json",
                "DownstreamScheme": "http",
                "DownstreamHostAndPorts": [
                    {
                        "Host": "localhost",
                        "Port": 5001
                    }
                ],
                "UpstreamPathTemplate": "/userCenter/swagger.json",
                "UpstreamHttpMethod": [ "Get", "Post" ]
            },
            {
                "DownstreamPathTemplate": "/userCenter/{postId}",
                "DownstreamScheme": "http",
                "DownstreamHostAndPorts": [
                    {
                        "Host": "localhost",
                        "Port": 5001
                    }
                ],
                "UpstreamPathTemplate": "/userCenter/{postId}",
                "UpstreamHttpMethod": [ "Get", "Post" ]
            },
            {
                "DownstreamPathTemplate": "/swagger/authCenter/swagger.json",
                "DownstreamScheme": "http",
                "DownstreamHostAndPorts": [
                    {
                        "Host": "localhost",
                        "Port": 5002
                    }
                ],
                "UpstreamPathTemplate": "/authCenter/swagger.json",
                "UpstreamHttpMethod": [ "Get", "Post" ]
            },
            {
                "DownstreamPathTemplate": "/authCenter/{postId}",
                "DownstreamScheme": "http",
                "DownstreamHostAndPorts": [
                    {
                        "Host": "localhost",
                        "Port": 5002
                    }
                ],
                "UpstreamPathTemplate": "/authCenter/{postId}",
                "UpstreamHttpMethod": [ "Get", "Post" ]
            }
        ],
        "GlobalConfiguration": {
            "BaseUrl": "http://localhost:5000"
        }
    }

     此配置后,才可以通过5000端口访问其他服务

    二、部署打开

     提示

     选择安装

     提示

    确认hyper-v是否启动

    首先可以打开控制面板,程序和功能。左侧列表选择启用或关闭windows功能中hyper-v是否全部打勾。若没有,可以全选然后重启。

    如果已经全部开启,还是跳出弹框,则有可能是CPU 的SVMmode没有打开。

    确认cpu的svmmode是否打开

    则关机之后,重启的时候,疯狂按del键进入BIOS。然后可以看一下cpu的几个设置,找到SVMmode看是否disabled了。如果是的话,则enable他。开机之后,就可以进入docker啦!

    如图所示

    启动以后会出现在桌面的右下角区域,鼠标放上去以后显示Docker is running表示启动成功,之后在cmd运行docker命令即可

     二.Docker的基本使用

    0、检查docker版本 docker version 
    
    1、搜索镜像
    [root@localhost ~]# docker search tomcat
    2、拉取镜像
    [root@localhost ~]# docker pull tomcat
    3、根据镜像启动容器
    docker run ‐‐name mytomcat ‐d tomcat:latest
    4、docker ps
    查看运行中的容器
    5、 停止运行中的容器
    docker stop 容器的id
    6、查看所有的容器
    docker ps ‐a
    7、启动容器
    docker start 容器id
    8、删除一个容器
    docker rm 容器id
    9、启动一个做了端口映射的tomcat
    [root@localhost ~]# docker run ‐d ‐p 8888:8080 tomcat
    ‐d:后台运行
    ‐p: 将主机的端口映射到容器的一个端口 主机端口:容器内部的端口
    
    10、查看容器的日志
    
    docker logs container‐name/container‐id
    
    11、查看镜像列表
    docker images
    
    12、删除一个镜像
    
    docker rmi imageId
    
    13、进入运行中的容器
    
    docker exec -it 容器name/id sh/ .
    
    14、推出运行中的容器
    
    exit
    
    更多命令参看
    https://docs.docker.com/engine/reference/commandline/docker/

    查看版本效果如下

     记得切换linux,因为Dockerfile之前选择Windows,故使用windows的 

    1、build镜像

    docker build -t productapi -f ./SunnTu/Dockerfile .   //productapi 镜像别名 (./SunnTu/Dockerfile .) Sunntu项目下Dockerfile文件 后加个 .

    如图所示

     2、运行镜像

    运行容器和查看运行的容器

    docker run -d -p 9050:80 --name productservice productapi

    如图所示

     三、后续添加支持docker文件

     选择文件

     vs会提示

     续

     构建

     续

     <none>则是临时镜像

    productapi则是我们构建的对象

    运行

    VS的Docker调试下

     调试运行

     注意打包后

     运行后

     注意这里用了consul保证心跳一直在跑,有时候控制台卡顿ctrl+c下

    构建运行镜像(保证此状态处于运行状态)

     Vs的Docker运行的镜像和自己构建的镜像都会出现在 Docker Desktop

  • 相关阅读:
    jquery判断复选框是否选中
    jquery验证网址格式
    jquery右下角返回顶部
    thinkphp分页格式的完全自定义,直接输入数字go到输入数字页
    textarea出现多余的空格
    html渐隐轮播
    linux 路由 route
    ansible 自动化运维工具
    数据库 group by 后其他列的取值
    linux 磁盘io高排查
  • 原文地址:https://www.cnblogs.com/fger/p/13222878.html
Copyright © 2020-2023  润新知