小编Edo*_*the的帖子

使用容器编排处理 EF Core 迁移

我正在构建一个带有 ASP.Net Core、Entity Framework Core 和 PostgreSQL 的 vanilla Web 应用程序,我想使用 Docker 之上的容器编排器(无论是 Docker Swarm 还是 Kubernetes)进行部署。

我想知道如何在部署过程中集成我的数据库迁移。

我目前的Dockerfile(我正在使用多阶段构建)是:

FROM mcr.microsoft.com/dotnet/core/sdk:2.2-alpine as builder
COPY . /app
WORKDIR /app
RUN dotnet publish -c Release -o publish

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2
COPY --from=builder /app/publish /app/
WORKDIR /app
CMD dotnet MyApp.dll
Run Code Online (Sandbox Code Playgroud)

我的docker-compose.yml(我想通过docker stack命令使用它,所以它不包括使用build选项):

version: '3'

services:
    app:
        image: edouardberthe/myapp
        ports:
            - 80:80
        depends_on:
            - db
    db:
        image: postgres:latest
        ports:
            - 5432:5432
        volumes:
            - data:/var/lib/postgresql/data
        environment:
            POSTGRES_USER: myapp_user …
Run Code Online (Sandbox Code Playgroud)

docker entity-framework-core dockerfile docker-compose asp.net-core

8
推荐指数
1
解决办法
2639
查看次数

在没有 Anaconda 的情况下在 Virtualenv 中安装 Gurobi

我想在环境中使用带有 Python3.5 的Gurobi 优化库virtualenv,而无需安装整个 Anaconda 框架。这意味着能够gurobipy通过 Pipy安装 Gurobi 库 ( )。

在 Gurobi 网站上只解释了如何使用 Anaconda和 conda 包管理器安装它,使用命令:

conda config --add channels http://conda.anaconda.org/gurobi
conda install gurobi
Run Code Online (Sandbox Code Playgroud)

知道如何(以及为什么!)一个Python库就需要安装Python作为一个框架工作得很好(matplotlib通常什么麻烦事了,但并不需要它)。有没有办法将此命令conda config --add channels ***转换为类似的命令 for Pypi,所以我最终可以rm -rf98% 无用的 2Gb Anaconda 堆栈?

感谢您的回答。

python pip virtualenv gurobi anaconda

5
推荐指数
1
解决办法
7854
查看次数

Azure 生产环境中数据库迁移的最佳实践

我正在开发一个由 PostgreSQL 数据库支持的 ASP.Net Core 应用程序。

到目前为止,我的应用程序托管在我的个人 VPS 上,但我想迁移到 Azure 上,并且我不知道如何处理那里的数据库迁移。

我的数据库方案由 Entity Framework Core 处理并与 POCO 映射。如文档中所述,当我想要更改 SQL 方案时,我会更新 POCO,通过命令创建迁移 C# 文件dotnet ef migration create,并Database.Migrate()在运行时通过命令应用它们。这是通过在运行时应用迁移定义的,但是如下所述:

虽然这种方法对于本地开发和迁移测试很有成效,但不适合管理生产数据库。

有一段关于使用SQL 脚本,但没有真正涉及“如何在 CI/CD 管道中应用迁移脚本”。

当然,我查看了Microsoft文档上关于如何在Azure上部署ASP.Net Core应用程序+ SQL DB的官方教程,但是没有任何关于DB迁移的内容(生产DB的迁移是通过CLI从本地应用的)电脑 ...)。

Azure 上没有特定的服务允许我们应用数据库迁移吗?

我知道这个问题既不特定于 Azure,也不特定于 .NET 应用程序,但我担心我的问题太“广泛”。

此外,当在 Google 上查找“数据库迁移”时,大多数结果都是关于从给定数据库到另一个数据库(或从一个供应商到另一个供应商)的迁移,这是不一样的。

非常感谢

c# continuous-integration azure asp.net-core entity-framework-migrations

5
推荐指数
1
解决办法
1604
查看次数

窗口函数的SQL条件

我想对我的数据库(PostgreSQL v9.4.5)做一个特殊的请求,但我没有设法做到这一点.

简单来说,假设我有下表AvgTemperatures,表示不同城市的不同平均温度,并根据不同的时间长度计算(以月计):

 id |   city    |  avg | months 
----+-----------+------+--------
  1 |  New-York |   20 |     3   <--- average temperate over the last 3 months
  2 |  New-York |   19 |     6   <--- average temperate over the last 6 months
  3 |  New-York |   15 |    12   <--- etc
  4 |  New-York |   15 |    24
  5 |    Boston |   13 |     3
  6 |    Boston |   18 |     8
  7 |    Boston |   17 |    12 …
Run Code Online (Sandbox Code Playgroud)

sql postgresql window-functions

4
推荐指数
1
解决办法
7322
查看次数