2022-03-13:golang项目代码push到gogs上,如何自动编译、打镜像、k8s上运行?
2022-03-13:golang项目代码push到gogs上,如何自动编译、打镜像、k8s上运行?
答案2022-03-13:
2022-02-23:如何搭建k8s单机环境(用k3s),并且搭建dashboard?
2022-03-12:k8s如何搭建gogs+drone实现自动化部署cicd,yaml如何写?
上面的环境,都需要搭建。
测试demo见 git地址
主要是test1/.drone.yml的编写。
from_secret: kube_token,这个kube_token需要在drone页面中配置,
如下:
kind: pipeline
type: docker
name: dev
steps:
- name: build
image: golang
pull: if-not-exists
environment:
GOPROXY: https://goproxy.cn,direct
CGO_ENABLED: 0
GO111MODULE: on
GOOS: linux
GOARCH: amd64
commands:
- go env
- go build -o releases/test1-api ./cmd/test1-api
- sed -i "s/【DRONE_COMMIT:0:8】/${DRONE_COMMIT:0:8}/g" .helm/dev/values.yaml
- ls releases
- name: image
image: plugins/docker
pull: if-not-exists
settings:
registry: 192.168.204.13:50000
repo: 192.168.204.13:50000/moonfddgroup/test1
dockerfile: ./Dockerfile
tags: "${DRONE_COMMIT:0:8}"
insecure: true
- name: deploy
image: "pelotech/drone-helm3"
pull: if-not-exists
settings:
mode: upgrade
chart: ./.helm/dev
vaules_yaml: ./.helm/dev/values.yaml
release: test1
namespace: droneci
kube_api_server: "https://192.168.204.13:6443"
kube_token:
from_secret: kube_token
skip_tls_verify: true
values:
- image.tag=${DRONE_COMMIT:0:8}
trigger:
branch:
- master
- aaa
获取kube_token如下:
echo $(k3s kubectl -n kube-system get secret $(k3s kubectl -n kube-system get secret | grep ^kuboard-user | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d)
test1/Dockfile内容就太简单了,只需要打包,其他事情啥都不用干。如下:
FROM scratch
COPY releases/ /bin/
其他内容,见git地址。
效果如下:
2022-03-13:golang项目代码push到gogs上,如何自动编译、打镜像、k8s上运行?的更多相关文章
- 项目中使用sass,如何实现自动编译
本次React项目中用到了Sass,在一个主文件main.scss中引入了其余的scss文件,然后把main.scss文件编译为main.css文件,最后在项目的主文件入口index.html中引入m ...
- 03.pipeline实现项目自动编译docker镜像自动打包
https://jenkins.io/zh/doc/book/pipeline/ 官方教程,可以中文.Jenkinsfile就是把pipeline内容保存到文件,然后提交到svn等版本控制库中.安装b ...
- 基于node的前端项目代码包发布至nexus
目录 目录... 3 1. 前言... 1 2. 配置... 1 2.1. 配置angular.json文件... 1 2.2. 配置package.json文件... 1 2.3. 复制git地址. ...
- php课程 1-3 web项目中php、html、js代码的执行顺序是怎样的(详解)
php课程 1-3 web项目中php.html.js代码的执行顺序是怎样的(详解) 一.总结 一句话总结:b/s结构 总是先执行服务器端的先.js是客户端脚本 ,是最后执行的.所以肯定是php先执行 ...
- 在GitHub上创建上传下载开源项目代码
1.注册GitHub帐号,创建GitHub项目代码仓库 1.1.注册GitHub帐号 在使GitHub之前,需要先登录其官网注册一个免费使用的账号.登录 https://github.com/join ...
- iOS:使用Github托管自己本地的项目代码方式一:(Xcode方式:开发工具Xcode配置Git,由Xcode-->Source Control-->Commit)
管理代码的地方主要有:Github(国外流行).CocoaChina.Cocoa4App.中国开源社区.CSDN.博客园.简书等等..... 现在主要介绍如何使用Github托管自己的项目代码. 尊重 ...
- Git命令提交项目代码
Git客户端安装 今天就结合`GitHub`,通过`Git`命令,来了解如何实现开源代码库以及版本控制 GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git 作为唯一的版本库格式进行托 ...
- AndroidStudio第一次提交项目代码到git服务器/github
虽然使用AndroidStudio(以下简称as)开发并使用git管理代码已经有很长时间,但是第一次提交项目到git依然会很不顺利,网上的文章或许因为所使用版本比较老,并不一定完全凑效,因此写此笔记做 ...
- java项目代码上线
java项目代码上线 1:java项目代码上线架构图 ip地址及主机名规划 10.0.0.11 deploy 10.0.0.12 tomcat-web01 10.0.0.13 git.oldboy ...
- 借助GitHub托管你的项目代码
PS:话说自己注册了GitHub都很久了,却没有怎么去弄,现在系统学习一下,也把自己的学习经历总结下来share给大家,希望大家都能把GitHub用起来,把你的项目代码happy地托管起来! 一.基本 ...
随机推荐
- mysql 不包含某个字符
转载网址: https://blog.csdn.net/mp624183768/article/details/121696040?utm_medium=distribute.pc_relevant. ...
- 使用Docker搭建MinIO集群服务
概述 因为在云服务器上默认只有一块磁盘,如果直接在系统盘上安装MinIO,会被拒绝,所以这里采用Docker的方式绕过这一限制 操作环境 操作系统 CentOS 7.9 MinIO版本 RELEASE ...
- progress监视linux命令进程
progress监视linux命令进程 可以查看哪些命令进程 cp mv tar dd gzip cat grep 如何在ubuntu安装 sudo apt install progress 使用方法 ...
- SpringBoot——配置嵌入式 Servlet容器
更多内容,前往 IT-BLOG 一.如何定制和修改Servlet容器的相关配置 前言:SpringBoot 在Web 环境下,默认使用的是 Tomact 作为嵌入式的 Servlet容器: [1]修 ...
- Skywalking 链路追踪
Skywalking 根据官方的解释,Skywalking是一个可观测性平台(Observability Analysis Platform简称 OAP)和应用性能管理系统(Application P ...
- js面试题学习整理
1. 异步操作有哪些? 回调函数,事件监听,promise,ajax,async,setTimeout,Generator 2. Promise是什么? Promise是异步编程的一种解决方案. 从语 ...
- java代码审计-CSRF
0x01 前言 CSRF跨站请求伪造(Cross-site request forgery),当某个接口没有设置CSRF验证,点击了别人恶意的链接,可能会造成对这个接口发送相应的数据,造成某个数据被更 ...
- 几个对js帮助挺多的大佬写的博客
深入理解javascript原型和闭包(完结) JavaScript系列文章 同步异步回调DEMO知乎大佬的this与new解释 宏任务与微任务解析 js闭包 Vue项目中技巧ts学习 ES6基础入门 ...
- JS一切皆对象理解
对象都是通过函数创建的 function Fn() { this.name = '王福朋'; this.year = 1988; } var fn1 = new Fn(); fn1是个对象,它是由函数 ...
- R语言操作入门
R语言基础之入门篇 一.初识R语言及环境搭建 R语言最初是由新西兰奥克兰大学统计系的教授Ross Ihaka和Robert Gentleman在S语言基础上开发完成的.是一门解释性语言.在我看来R语言 ...