zoukankan      html  css  js  c++  java
  • 我用asp.net core 部署到docker遇到的问题

    1.怎么部署

      我是用文件的形式先发布出来,然后把文件拷贝到服务器上部署到docker中去。

    2.端口映射

      根据查找到的资料,dockerfile 是不支持指定映射服务器端口的,只能在run的时候用-p 命令指定。那这不是扯么,跑个run命令还要打一堆命令。所以我用的是docker-compose来运行镜像。

    在docker-compose.yml 文件中指定具体的端口映射

    3.静态文件目录映射

    遇到的错误:The path must be absolute. Parameter name: root 

    我的代码:

    错误是由FileProvider报出来的,videopath是从配置文件里面读取,经排错,应该是videoPath不是docker里面的路径引起的。

    解决方式:将videoPath目录配置为一个docker中存在路径。如:可以在docker发布时用volumes指定好挂载的路径。

    4. https 配置

    参照网上的配置,在docker-compose.yml中配置  

    ASPNETCORE_Kestrel__Certificates__Default__Password,ASPNETCORE_Kestrel__Certificates__Default__Path 两个参数,但总是报下面这个错误

    Interop+Crypto+OpenSslCryptographicException: error:2006D080:BIO routines:BIO_new_file:no such file

    最后发现原因竟然是双引号的问题。即enviroment的值不需要引号

      直接给值就可以了。

    还有一个是docker-compose.yml需要注意的, context 参数要给出 dockerfile所在的目录,不能用 . 来表示,否者dockerfile 的ENTRYPOINT 会提示没有安装.net core环境,千万不要

    被visualstudio默认生成的docker-compose.yml给欺骗了。。

  • 相关阅读:
    docker基本命令
    服务器端使用DeferredResult异步推送技术
    单链表输出倒数第k个结点值(栈实现)
    fork炸弹
    BlockingQueue实现阻塞队列
    C#工作笔记
    实现一个简单的Log框架
    (转载)在spring的bean中注入内部类
    Spring整合Hessian
    spring整合axis2(最小配置化)的示例
  • 原文地址:https://www.cnblogs.com/jidanfan/p/11670043.html
Copyright © 2011-2022 走看看