docker - 带有 ASP.NET Core 2.2 的 AWS CodeBuild Docker 映像
问题描述
我想使用 ASP.NET Core 2.2 在 AWS 中构建我的项目,但不幸的是,AWS 没有自己的构建镜像可用,我正在尝试使用 Docker 镜像mcr.microsoft.com/dotnet/core/sdk :2.2。
它被卡住了pip install --upgrade awscli
......我想是因为pip
没有安装在图像上。所以我试图通过安装来解决这个问题,pip
但我收到了这个错误:
Phase context status code: COMMAND_EXECUTION_ERROR Message: Error while executing command: apt-get install python3-dev. Reason: exit status 1
我的故障排除尝试包括:
- 切换
Privileged
CodeBuild 环境的标志 - 包括和不包括
sudo
在我的buildspec.yml
命令中 - 尝试
pip
两者pip3
这是我目前的buildspec.yml
:
version: 0.2
phases:
pre_build:
commands:
- apt-get update --fix-missing
- apt-get install -y apt-transport-https
- apt-get update
- apt-get install python3-dev
- apt-get install python3-pip
- pip3 install --upgrade awscli
- dotnet restore AspNetCoreWebApplication/AspNetCoreWebApplication.csproj
- dotnet restore AspNetCoreWebApplicationTest/AspNetCoreWebApplicationTest.csproj
build:
commands:
.....the rest omitted for brevity......
我的问题是为什么这不起作用?
解决方案
发现了问题。这些命令:
apt-get install python3-dev
apt-get install python3-pip
需要包含该-y
标志以自动对命令中的任何提示说“是”。
添加这样的标志有效:
apt-get install -y python3-dev
apt-get install -y python3-pip
推荐阅读
- .net - 从 shell 扩展读取配置文件
- android - 在 iOS 中使用 Wowza SDK MP4Writer 录制视频中的音频问题
- python - 为什么第二个程序有效但第一个程序无效?
- java - Android 蓝牙 Gatt getValue 返回一个 20 大小的 0 字节数组
- android - 无法使用 Espresso 启动应用程序
- arduino - Arduino gsm 屏蔽没有响应。gsmAccess.begin() 不起作用
- python - 更快的嵌套 for 循环,可能使用 pd.groupby
- javascript - 如何使雷达图从 0 开始?
- javascript - 如何让用户不重复浏览器标签?
- web - 这些请求打算做什么?