Tag: 单声道

在Heroku的Docker容器中访问X-Server

我将一个旧的.NET Web API应用程序移植到Docker容器中的Heroku上运行。 我正在使用单声道图像。 这是我的Dockerfile: FROM mono:latest EXPOSE 5000 ENV PORT 5000 ADD ./ /api WORKDIR /api RUN nuget restore -NonInteractive RUN msbuild webapi.sln /p:Configuration=Release CMD mono /api/MyProject/bin/Release/MyProject.exe port:$PORT 非常简单,使用最新的Mono映像,复制源代码,恢复NuGet包,构build解决scheme并运行它。 $ PORT环境variables由Heroku设置,或者我的本地开发环境默认为5000。 这一切都很好,除了一个特定的API控制器生成PDF报告。 该报告由PdfSharp生成,它依赖于System.Drawing程序集进行必要的渲染。 但这意味着依赖于显示。 当我调用该控制器生成报告时,出现以下错误。 Could not open display (X-Server required. Check your DISPLAY environment variable). 我需要访问X服务器才能进行必要的渲染。 我尝试了很多东西,但总是被困在这个错误。

Mono.Btls.MonoBtlsException:Ssl错误:1000007d:SSL例程:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED

你能帮我解决这个问题: Mono.Btls.MonoBtlsException:Ssl错误:1000007d:SSL例程:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED 在docker容器上运行mono项目 场景: 创build一个自定义的docker镜像,使用Mono运行.net风暴拓扑 我的自定义泊坞窗图像有: Ubuntu 16.04 LTS 风暴1.1.0 动物园pipe理员3.4.6 单声道4.8.1

在ac#程序中创build/运行docker容器(在mono下)

我有一个经理程序在我的docker主机上分配资源来处理传入的请求。 我们想尝试把我们的一个C#进程closures到docker容器(现在在本地运行)。 我find了运行docker并调用我的c#程序的命令行: /usr/bin/docker run -d -p 9001:9001 centos-foo /opt/mono/bin/mono /opt/prog/MyExe.exe –no-console –http_port 9001 当我使用系统进程类和调用启动build立该命令时,它不起作用。 我的主机程序是在centos 6.5上的apache用户下运行的单声道c#。 Process mProcess = new Process(); mProcess.StartInfo.FileName = "/usr/bin/docker"; mProcess.StartInfo.Arguments = " run -d -p " + mPort + ":" + mPort + " centos-foo /opt/mono/bin/mono " + mParameters.Get(AppParameterKeys.PROVIDER_EXE) + " –no-console –http_port " + mPort; mLog.Info("Starting ServiceProvider via […]

Docker缺lesslog4net ConsoleAppender日志

我有一个简单的C#程序,具有以下log4netconfiguration: <log4net> <appender name="stdout" type="log4net.Appender.ConsoleAppender"> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%%-5level – %message%newline" /> </layout> </appender> <root> <level value="DEBUG" /> <appender-ref ref="stdout" /> </root> </log4net> 和下面的代码(缩写为清晰): public static void Main(String[] args) { var log = LogManager.GetLogger("Logger"); log.Info("Hello From Logger"); Console.WriteLine("Hello From Console"); } 我在Ubuntu 16.04系统上使用.NET 4.5 mono进行编译和运行。 当我使用控制台运行程序时,输出如预期的那样: $ mono Program.exe INFO – Hello From Logger Hello […]

Linux上的Nancy使用100%的CPU

我的南希networking应用程序正在使用100%的CPU没有实际使用。 他们在单声道的docker集装箱内运行。 我能想到的唯一的事情就是在我的主要function,无休止的循环,就像 while(Console.ReadLine() != "quit") {} 但我想, Console.ReadLine()会被阻塞,因此只有在有input的时候,这个循环才会执行。 艾米我错过了什么? 是否还有其他的原因使南希在单声道使用所有的CPU? – 在开发过程中,它似乎运行良好。 更新: mono NancyServer.exe的应用程序只需mono NancyServer.exe即可启动。 内存使用率比以前的基于XPS的版本(50-70MB,而不是160-180MB)要低得多,但是基于XPS的应用程序使用的CPU不到0.1%(也没有做任何事情)

为了运行F#应用程序,使用最小单声道运行时的Ubuntu Docker映像

我需要构build一个“苗条”泊坞窗图像,其中只包含单声道运行时,以执行预编译的F#应用程序。 换句话说,我想为执行单声道应用程序创build最简单的图像,而不需要额外的东西来编译/构build应用程序。 我使用Ubuntu:16.04作为我的基本映像(重约47MB)。 如果我尝试在该映像的顶部安装mono(使用apt-get install mono-devel),则映像将增长到500MB。 这当然是因为安装了整个单声道开发工具。 我如何才能继续创build一个包含单声道运行时的图像? 有没有办法安装通过apt-get的单声道运行时?

保持自托pipe的服务堆服务作为docker群服务而不使用控制台readline或readkey

我有一个使用C#编写的控制台应用程序,它具有以下forms: static void Main(string[] args) { //Some service setup code here Console.ReadKey(); } 在Windows上作为控制台运行时,此代码正常工作。 该实现几乎完全是https://github.com/ServiceStack/ServiceStack/wiki/Self-hosting,因为这是一个testing项目 然后我在linux上使用mono来编译这个项目,并构build成一个docker文件。 如果是交互式的,基于这个映像运行容器是没有问题的 docker run -it –name bob -p 1337:1337 <myservice> 容器在前台运行 但是,如果我省略-it开关,容器立即退出 – 我假设因为没有STDINstream,所以Console.ReadKey()不起作用。 我正在尝试把这个服务托pipe在一个群中,所以没有任何超脱的概念。 我可以在我的主要方法中启动一个循环,以保持控制台服务的活着,但这似乎对我来说很难… 是否有一个好办法保持我的服务活着的情况下,我想运行我的容器detatched(docker运行-D …)

用gitlab ci运行sonarqube扫描仪

我正在尝试使用下面的堆栈(只是相关的)将.NET应用程序的CI环境放在一起: Debian +单声道 docker Gitlab CI Gitlab-multi-runner(作为docker集装箱) Sonarqube + Postgre 我已经使用docker-compose为sonarqube和postgre创build容器,两者都在运行和工作。 我很遗憾地执行sonitquay分析为我的构build由gitlab亚军执行和我发现所有的例子是使用Maven的。 我也尝试使用声纳扫描仪,至今没有运气。 这里是我的gitlab-ci.yml的内容: image: mono:latest cache: paths: – ./src/T_GitLabCi/packages/ stages: – build .shared: &restriction only: – master tags: – docker build: <<: *restriction stage: build script: – nuget restore ./src/T_GitLabCi – MONO_IOMAP=case xbuild /t:Build /p:Configuration="Release" /p:Platform="Any CPU" ./src/T_GitLabCi/T_GitLabCi.sln – mono ./tools/NUnitConsoleRunner/nunit3-console.exe ./src/T_GitLabCi/T_GitLabCi.sln –work=./src/T_GitLabCi/test –config=Release […]