拂衣天气(微天气)Github Action镜像自动构建与推送

news/2024/10/11 2:28:16

前言

这里暂不作过多的操作,还是保持与此前一致。即通过Github Action完成Docker Image的build与push,目标仓库为阿里云容器镜像服务实例(个人版)registry.cn-hangzhou.aliyuncs.com

那么一共分为三个部分:

  • Dockerfile编写
  • 阿里云容器镜像服务配置
  • Github Action

Dockerfile编写

  • jdk17
  • gradle
FROM gradle:jdk17-alpine AS build# 设置语言,支持中文
ENV LANG C.UTF-8COPY --chown=gradle:gradle . /opt/gradle/src
WORKDIR /opt/gradle/src
RUN gradle clean build -x test --no-daemonFROM eclipse-temurin:17-jdk-jammyCOPY --from=build /opt/gradle/src/build/libs/*.jar /usr/app/WORKDIR /usr/app/RUN sh -c 'touch micro-weather-backend-1.0.0-RELEASE.jar'ENTRYPOINT ["java", "-jar", "micro-weather-backend-1.0.0-RELEASE.jar"]

Github Action

  1. 先在阿里云镜像服务中创建命名空间

  2. 创建仓库(可选,因为可以自动创建)

  3. 编写Github Action脚本

    micro-weather-github-action-01

    name: Micro Weather Service Image Build And Push CIon:
    push:branches:- 'main'
    jobs:
    docker:runs-on: ubuntu-lateststeps:- name: Checkoutuses: actions/checkout@v2# setup-qemu 如果您想使用 QEMU 添加仿真支持以便能够针对更多平台进行构建,则 action 会很有用- name: Set up QEMUuses: docker/setup-qemu-action@v1# setup-buildx-action 将默认使用docker-container 构建器驱动程序创建和引导构建器。非必需- name: Set up Docker Buildxuses: docker/setup-buildx-action@v1- name: Login to Aliyun DockerHubuses: docker/login-action@v1with:registry: ${{secrets.ALIYUN_DOCKERHUB_REGISTRY}}username: ${{ secrets.ALIYUN_DOCKERHUB_USERNAME }}password: ${{ secrets.ALIYUN_DOCKERHUB_TOKEN }}- name: Build and pushuses: docker/build-push-action@v2with:push: truetags: registry.cn-hangzhou.aliyuncs.com/fuyi-atlas/micro-weather:latest
    
  4. 设置环境变量

    micro-weather-github-action-02

    micro-weather-github-action-03

    micro-weather-github-action-04

  5. 触发Action测试(提交代码)

    第一次失败是因为我是直接在github上面添加的action配置,通过commit提交后直接触发了action动作,但是此时还没有配置环境变量,所以失败了。所以可以在action触发前将环境变量设置好就不会失败了。

    micro-weather-github-action-05

    micro-weather-github-action-06

参考文档

  • 在github上使用workflow构建docker镜像并推送阿里云

💡 Github Action脚本内容来自于网络,存在少许更改。但由于记不得来源,所以没有做出记录

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/27422.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

拂衣天气(微天气)终篇

起源 天气小程序产生于2022年年初,目的是用于验证自己是否有进入全栈开发(仅前后端)的能力。 受新冠疫情影响,2022年的春节是在杭州过的。还记得当时附近好几个地方都被划为了高风险,对整个区进行了管控。如果选择回家的话,得到将是14天的隔离,还不确定能否回来上班。因…

拂衣天气(微天气)-技术预研

前言 俗话说:磨刀不误砍柴工。 我想做一个天气类别的小程序,以此进行全栈开发能力的试炼。我想这会是一个微信小程序、是一个可以正常使用的小程序,以Java进行服务端开发,以Mapbox实现天气数据可视化。 但是我是一个后端开发工程师,我不怎么会写页面,我特别的讨厌写CSS。…

跟羽夏去实现协程

跟羽夏来自己亲自去实现一个简单的协程,并让它运行起来。写在前面此系列是本人一个字一个字码出来的,包括示例和实验截图。本人非计算机专业,可能对本教程涉及的事物没有了解的足够深入,如有错误,欢迎批评指正。 如有好的建议,欢迎反馈。码字不易,如果本篇文章有帮助你的…

VScode自定义折叠代码快 region和endregion 关键字

前言全局说明VScode自定义折叠代码快 region和endregion 关键字一、说明vscode 有自带的代码折叠功能,但是因为某些内容不是标准的代码或不被识别就不能正常被折叠 比如很多的单行注释,或者被注释的代码就能不能自动折叠。 这里就要用到 region和endregion 关键字使用时 regi…

推荐系统工程架构

推荐系统简介 计算原理 我们把每个用户/视频表示成空间中的一个点。 如果两个点越接近,就认为这个用户对这个视频的喜欢程度越高,反之越低。 用户点赞这个视频就拉近两点,没点赞就拉远两点的距离。这样就组成了整体推荐系统推荐系统流程 从海量视频中召回用户感兴趣的视频,…

一键自动化博客发布工具,chrome和firfox详细配置

blog-auto-publishing-tools博客自动发布工具现在已经可以同时支持chrome和firefox了.blog-auto-publishing-tools博客自动发布工具现在已经可以同时支持chrome和firefox了。 很多小伙伴可能对于如何进行配置和启动不是很了解,今天带给大家一个详细的保姆教程,只需要跟着我的…

统一场理论公式推导和笔记——part5

三十七,运动电荷的磁场产生引力场 1,匀速直线运动电荷的磁场产生引力场 统一场论核心是变化的引力场可以产生电场,反过来,变化的电磁场也可以产生引力场。==》根据爱因斯坦的广义相对论,变化的电磁场确实可以产生引力场,尽管理论上变化电磁场会产生引力场,但由于电磁场的能…

网络流总结

琐记 这玩意是之前寒假集训时学二分图时被忽悠去学的,今天又回去复习了一下,想写篇总结。其他的后面有时间再来填坑,先咕着。。。最大流最小割定理 内容:任何一个网络的最大流量等于最小割中的边容量之和 这玩意看蓝书解释没咋懂,我自己感性理解了一下,有不对的各位指点一…