.net - 预期“MappingStart”,得到“SequenceStart”
问题描述
我正在尝试开始使用 Docker,但我似乎在每一步都遇到了问题。看到很多模糊的错误。我创建了一个 ASP.NET Core 应用程序并启用了 Docker 支持,它按预期工作。
我现在正在尝试创建一个 SQL 数据库服务,所以我编辑了 compose 文件,如下所示:
version: '3.4'
services:
sql.data:
sql.data:
image: microsoft/mssql-server-linux
environment:
- MSSQL_SA_PASSWORD=Pass@word
- ACCEPT_EULA=Y
- MSSQL_PID=Developer
ports:
- "5434:1433"
webapplication2:
image: ${DOCKER_REGISTRY}webapplication2
build:
context: .
dockerfile: WebApplication2/Dockerfile
这是输出:
error : (Line: 7, Col: 7, Idx: 107) - (Line: 7, Col: 7, Idx: 107): Expected 'MappingStart', got 'SequenceStart' (at Line: 7, Col: 7, Idx: 107).
1>Done building project "docker-compose.dcproj" -- FAILED.
问题是什么?到目前为止,我已经看过这里:https ://developercommunity.visualstudio.com/content/problem/248013/docker-project-fails-to-build-after-upgrade-to-vis.html - 删除破折号似乎没有帮助。
YAML 似乎在这里解析:http: //yaml-online-parser.appspot.com/。如果我删除 SQL.Data 服务,那么它会按预期工作。
解决方案
这似乎是VS/Dockertools 的一个错误。您可以使用另一种表示法:
version: '3.4'
services:
sql.data:
sql.data:
image: microsoft/mssql-server-linux
environment:
MSSQL_SA_PASSWORD : Pass@word
ACCEPT_EULA : Y
MSSQL_PID : Developer
ports:
- "5434:1433"
webapplication2:
image: ${DOCKER_REGISTRY}webapplication2
build:
context: .
dockerfile: WebApplication2/Dockerfile
请注意,冒号 (:) 的两侧必须有一个空格。
推荐阅读
- azure-timeseries-insights - 从原始数据构建累积变量/聚合
- bash - 为什么 bash 后增量运算符设置非零结果代码?
- laravel-8 - request()->validate() 在 n laravel 8 左右第二次不起作用
- excel - 分块和超越 Laravel
- python - Matplotlib 反转图例顺序(X 轴),但保持图形方向相同
- javascript - 第 4:13 行:'React' 未定义 no-undef
- class - 定义三个类,Polygon、Rectangle 和 Square。Polygon 将是 Triangle 和 Square 的父类
- slack - 我想在松弛消息中显示“显示更多”
- flutter - Flutter:如何配置/构建使用单个私有“核心”库/包的多个应用程序的最佳实践是什么?
- c++ - C++向量在传递给函数后被清空