阿里云 云效Devops流水线Flow自动化部署Docker项目
2021-12-07 本文已影响0人
王宣成
https://flow.aliyun.com/my?page=1
Dockerfile
FROM registry.cn-hangzhou.aliyuncs.com/wangxuancheng/golang-alpine:latest
ENV WORKDIR /app
WORKDIR $WORKDIR
ADD . .
RUN ["/bin/sh","-c","export GOPROXY=https://goproxy.cn && go mod tidy && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o main main.go"]
ENTRYPOINT ["./main"]
1、新建流水线

2、选择模板

3、添加流水线源

4、选择阿里云容器镜像服务仓库构建镜像 https://cr.console.aliyun.com/cn-hangzhou/instances

5、添加新任务选择Docker部署

6、选择主机

7、部署脚本
#部署脚本会在部署组的每台机器上执行。一个典型Docker部署脚本如下:
#示例中使用的$image是您在脚本下方的变量处定义的变量(上游输出或自定义)
#docker run $image
docker pull registry.cn-hangzhou.aliyuncs.com/wangxuancheng/gf:${DATETIME}
if [[ -n $(docker ps -aq -f "name=^gf$") ]];then
docker rm -f gf
fi
docker run --name gf \
-p 8199:8199 \
-v /www/wwwroot/gf/docker/uploads:/app/uploads \
-v /www/wwwroot/gf/docker/config:/app/config \
-v /www/wwwroot/gf/docker/tmp:/app/tmp \
-d registry.cn-hangzhou.aliyuncs.com/wangxuancheng/gf:${DATETIME}
8、保存并运行发布

9、回滚操作
