【发布时间】:2020-04-05 02:12:03
【问题描述】:
我有两条路。一个用于获取模板,一个用于生成文档。 在 Docker 上部署它工作正常(应用程序启动,工作并且没有发出警告),绑定安装在我的本地机器上创建这两个目录,但似乎没有使用它们,甚至没有创建它们?在容器上。
这是我尝试过的:
1) AppSettings.json 中的指定路径(这是我没有 Docker 的配置,下面会在 docker-compose 文件中覆盖)
"RootDirectoryForDocuments": {
"DocumentsRoot": "TestDocumentsDir",
"TemplatesRoot": "TestTemplatesDir"
}
2) 创建 Docker Compose 文件。这里首先我将路径作为环境变量提供,然后尝试让容器在卷部分中使用它们:
version: "3.7"
services:
hraapi:
build: ../Hra.Api
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ENV_RootDirectoryForDocuments_DocumentsRoot="/app/GeneratedDocs"
- ENV_RootDirectoryForDocuments_TemplatesRoot="/app/Templates"
image: user/hra.api:v1.0
container_name: hra.api
ports:
- "5000:80"
depends_on:
- hradb
volumes:
- C:/Users/User/Desktop/GeneratedDocs:/app/GeneratedDocs
- C:/Users/User/Desktop/Templates:/app/Templates
当我运行这个 DockerCompose 时,它会自动在我的桌面上创建这两个文件夹。但是,我希望它也能在容器中创建和使用它们。 我尝试了很多来寻找 ASP.NET Core 容器的结构,以便使用那里已经存在的路径,但没有成功。
【问题讨论】:
标签: c# docker asp.net-core docker-compose