tencent cloud

弹性微服务

动态与公告
公告
产品动态
产品简介
产品概述
产品优势
应用场景
购买指南
计费概述
产品定价
欠费与停服说明
快速入门
步骤1:获取访问权限
步骤2:创建环境
步骤3:创建应用
步骤4:部署应用
操作指南
环境管理
应用管理
权限管理
查看变更记录
实践教程
Github Actions 在 TEM 中的使用
托管静态网站
弹性微服务应用访问公网(通过 NAT 网关)
弹性微服务应用访问公网(通过 API 网关)
弹性微服务应用运行失败故障排查指南
使用 API 网关快速访问 TEM 应用
Java 应用调优实践教程
Java 8 迁移至 Java 11 实践教程
API 文档
History
Introduction
API Category
Making API Requests
Environment APIs
ModifyIngress
Resource APIs
Application APIs
Service APIs
RollingUpdateApplicationByVersion
Access Policy APIs
Configuration file APIs
Log collecting APIs
Scaling Rule APIs
Application Version APIs
Other APIs
Workload APIs
Data Types
Error Codes
常见问题
弹性微服务配置
联系我们
词汇表
TEM 政策
隐私政策
数据处理和安全协议
文档 弹性微服务实践教程Github Actions 在 TEM 中的使用

Github Actions 在 TEM 中的使用

PDF
聚焦模式
字号
最后更新时间: 2024-01-09 12:42:59

Github Actions 在 TEM 中的使用

GitHub Actions

集成世界级 CI/CD 的工具,方便用户的使用 Github 的 workflow。可参考 官方文档 自行学习。
说明:
GitHub Actions makes it easy to automate all your software workflows, now with world-class CI/CD.

TEM 支持的应用发布类型

TEM 平台以 Cloud Native 为基础设施,所有应用在 runtime 时都以 Container 形式存在。TEM 对于 java 应用特别支持了 JAR、WAR 包的发布,平台负责 Image 的构建和管理。除此以外的其他语言,均需自己构建 Image,并推送至腾讯云的镜像仓库中。

使用方式

以 .Net 为例,展示一下基本 GitHub Actions 的使用方式。
name: .NET

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup .NET
uses: actions/setup-dotnet@v1
with:
dotnet-version: 5.0.x
- name: Declare some variables
id: vars
shell: bash
run: |
echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
- name: Build Code
run: dotnet publish -o ./target
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to Registry
uses: docker/login-action@v1
with:
registry: ${{ secrets.REGISTRY_URL }}
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v2
with:
context: .
push: true
platforms: linux/amd64,linux/arm64
tags: ccr.ccs.tencentyun.com/han_test/my-web-app:${{ steps.vars.outputs.sha_short }}
1. 客户需代码仓库内包含 dockerfile 文件,供构建的 action 使用。
FROM mcr.microsoft.com/dotnet/aspnet:5.0
COPY ./target /app
WORKDIR /app
ENTRYPOINT ["dotnet", "myWebApp.dll"]
2. 此处以 commitId 作为镜像的 tag,方便确认 runtime 的应用代码版本。如无此需求,可直接使用 latest 镜像版本。
git rev-parse --short HEAD
3. 腾讯云的 个人版镜像仓库 需要用户的登录信息。首次打开个人版页面时账户信息会自动弹窗。企业版类似,可自行查找云上相关文档。
- name: Login to Registry
uses: docker/login-action@v1
with:
registry: ${{ secrets.REGISTRY_URL }}
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_TOKEN }}
4. 相关的秘钥可使用仓库设置页面的 Secrets 管理。



帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈