Tag: 天青

在Linux上的Azure Web应用程序中运行dotnet核心docker映像时没有find可执行的匹配命令“dotnet – / .. /。dll”

1.背景 我目前正在处理下面的构build/部署pipe道: Github( https://github.com/devedse/DeveMazeGeneratorCore ) Travis Build( https://travis-ci.org/devedse/DeveMazeGeneratorCore/jobs/196910720 ) dotnet恢复 dotnet构build dotnet发布 docker工人创build图像 docker工人将镜像发布到集线器 Docker镜像集线器( https://hub.docker.com/r/devedse/devemazegeneratorcore/ ) 在Linux上使用Azure Web App执行部署( http://devemazegeneratorcoredocker.azurewebsites.net/api/mazes/MazePath/512/512 ) 。 2.问题 每当我把东西推到Github仓库时,一个构build就会被启动,步骤1-3正在被正确执行。 但是,Azure上的网站无法访问。 我使用SCM浏览到debugging控制台( https://devemazegeneratorcoredocker.scm.azurewebsites.net/DebugConsole/Default.cshtml (供将来参考)),并执行以下命令以查找由Docker生成的日志文件: 然后使用以下命令来读取它们: cat docker_128_err.log cat docker_128_out.log 出日志显示以下结果(似乎是正确的): Login Succeeded latest: Pulling from devedse/devemazegeneratorcore 5040bd298390: Already exists fce5728aad85: Already exists 76610ec20bf5: Already exists 51ee4768b31d: Already exists 4dc55ff439a1: Already […]

微服务架构中的数据库位置

我们有一个单一的应用程序,我们现在正在转换为使用容器的微服务架构。 我们的微服务是有状态的 (即他们需要从数据库插入/检索数据)。 根据微服务架构,每个微服务应该有自己的数据(即我们的情况下的数据库)。 我的问题是,应该部署每个微服务的数据库,是否应该在部署微服务的同一个主机上,在部署微服务的同一个容器中,还是应该在独立的服务器上,比如azure数据库或者其他的东西? 每种方法的优缺点是什么?根据微服务最佳实践,什么是最好的方法? *

无法连接到新的Azure虚拟机上的MongoDB

我在Azure Portal for MongoDB中创build了一个新的“Container App”。 这使用了Docker Hub的官方MongoDB容器,并创build了一个Ubuntu 15.04盒子。 我以前从来没有使用过Docker。 我能够SSH进入虚拟机,并连接到虚拟机上的mongo。 从ssh会话中,如果我键入: docker工人 我得到以下输出: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a9af4c2e2b95 mongo "/entrypoint.sh mongo" 34 minutes ago Up 24 minutes 0.0.0.0:27017->27017/tcp compose_mongo_1 但是,当我尝试从本地盒子连接到Mongo时,出现连接错误,提示“5000毫秒后无法连接…,放弃”。 起初我以为是因为端口没有打开,但我去了Azure门户中的“networking安全组”,并允许端口27017上的端口入站TCP通信。 我仍然无法连接。 如果有人能帮助我,我将不胜感激。 谢谢!

无法连接到存储在Azure虚拟机上的Nexus 3预览版上的Dockerregistry

基本上我无法连接到dockerregistry我试图使用最新的Nexus预览。 首先,我在运行Ubuntu 14.04 trusty的MS Azure云服务器上安装Sonotype Nexus 3 Preview。 让我们打电话给这个位置 进入 Nexus用户界面。 我从开始到结束使用本指南 – https://books.sonatype.com/nexus-book/3.0/reference/index.html 所以我知道连接到一个远程的Docker仓库的唯一方法是通过SSL,所以我使用8443端口显示在联结中启用了HTTPS。 然后,我创build了一个名为docker-hub的Docker代理服务器repo,以便能够按照本指南第8.3节中所述从Docker Central Hub中提取图像。 Nexus显示回购有一个URL https://my-azure-site.cloudapp.net:8443/nexus/repository/docker-hub/ 然后,我创build了一个名为docker-mySoftware的私有托pipe库,其中包含指向第8.4节中介绍的HTTPS docker连接器端口18444 ,Nexus将URL显示为 https://my-azure-site.cloudapp.net:8443/nexus/repository/docker-mySoftware/ 然后,我创build了一个名为docker的组别回购站 – 所有包含上述2的HTTPS docker连接器端口为18443(如本指南第8.5节所述),Nexus将URL显示为 https://my-azure-site.cloudapp.net:8443/nexus/repository/docker-all/ 起初,当我尝试运行下面8.7部分中所述的代码时,使用我的本地docker客户端也在我的物理笔记本电脑上运行ubuntu来testing代理 sudodockersearchmy-azure-site.cloudapp.net:18443/postgres 我得到的东西说有一个为my-azure-site.net:18443的CA证书,但不是为my-azure-site.cloudapp.net:18443所以我重新使用keytool的证书包括cloudapp部分。 现在,当我重试它,我越来越 来自守护程序的错误响应:意外的状态码404 顺便说一句,我忘了提及,我事先打开Azure控制台上的端口18444和18443。 我尝试重新创build回购,reindexing代理回购,在nexus azure云上重新创build证书,使用 sudo docker -d –insecure-registry my-azure-site.cloudapp.net:18443在我的docker客户端机器上,希望得到所有这些authentication的东西,但仍然没有运气。 我尝试了不同的URL组合,如 sudo dockersearchmy-azure-site.cloudapp.net:18443/nexus/postgres和https://my-azure-site.cloudapp.net:8443/nexus/repository/docker-all/nexus等。