【发布时间】:2016-12-14 07:26:23
【问题描述】:
所以我已经配置了我的.travis.yml 来构建和测试我的 ASP.NET Core 项目,但现在我必须将它配置为在 docker 中运行。到目前为止一切顺利,我已经有了构建的 Dockerfile,但后来我开始想:
- 我应该在 Docker 容器内部还是外部运行测试?或者这有关系吗?
- 如果我应该在里面做,这怎么能实现?因为
dotnet test没有**/*/支持,而且我的容器没有运行我的bash 脚本。
更新:
- 或者我应该在外面构建和测试,然后再创建 dockerimage?
Dockerfile 是:
FROM microsoft/dotnet:latest
ARG source=.
WORKDIR /usr/src/project
COPY $source .
RUN dotnet restore
EXPOSE 5000
CMD dotnet build **/*/project.json
.sh 是:
#!/bin/bash
cd test/
for D in `find ./ -maxdepth 1 -type d`
do
if [ -a ./project.json ]
then
( cd ${D}; dotnet test;)
fi
done
非常感谢任何建议。
【问题讨论】:
-
您介意分享一下您最终做了什么吗?
-
@valorl 对不起,我忘记了,我的解决方案在答案中
标签: bash docker asp.net-core dockerfile .net-core