FROM microsoft/dotnet
MAINTAINER [email protected]
RUN apt-get update && apt-get install -y
git
RUN git clone -q https://github.com/dockersample/webapi.git
WORKDIR webapi/
RUN dotnet restore
EXPOSE 5000
网上很多资料用 gitlab,jenkin 的方式感觉有点复杂,所以寻求一个简单的方式处理
1
sarices 2018-10-17 17:33:34 +08:00
github 提供了 webhook 啊,自己写一个服务在服务器上面响应这个 webhook 就好了
|
2
sarices 2018-10-17 17:34:38 +08:00
github-webhook-handler 了解一下
|
3
daijinming OP @sarices 哥们你说的这个有道理,我考虑是这样的一个是您说的这个方式,另外一个就是我手动运行脚本。这里我也是想大家征集下这个服务中执行的脚本该如何处理?
|
4
alixali 2018-10-17 18:00:46 +08:00
这样可能需要重新编写 docker-compose 文件,,在启动空 docker 镜像的时候执行 sh 脚本,去拉去代码并编译,然后生成新镜像。个人感觉可行,这样的话就给自己生成一大堆的中间版本镜像。
|
5
gaius 2018-10-17 18:02:50 +08:00
git pull 打包 关服务器 删应用 复制 启动服务器
|
6
cy97cool 2018-10-17 19:03:52 +08:00 1
提个小建议 真的有必要更新容器镜像嘛?容器挂载主机的代码目录,主机收到通知 pull 代码后直接重启容器即可
如果代码支持热重载(比如 uwsgi 的应用) 主机 docker exec 让容器重新加载即可 对业务造成的影响更小了 没必要每次都浪费时间和 CPU 去 build |
7
daijinming OP |
8
daijinming OP @cy97cool 根据您的意见我写个博文,有空看看,提点建议 https://www.jianshu.com/p/49be41782408
|
9
shylockhg 2018-10-18 17:50:29 +08:00
travis-ci
|