Gogs

容器时代的持续交付工具---Drone:Drone使用

╄→尐↘猪︶ㄣ 提交于 2020-04-25 07:42:33
上一篇文章里已经介绍了如何安装Drone,下面我们来看下如何使用。还是基于gogs作为git仓储。 首先打开server对应的地址,进入登录页面,输入在启动server时配置的管理员账号(对应的就是gogs里的账户,当然可以使用其他账号,但是有些操作必须管理员才可以)进行登录,可以进入到系统中。 点击右上角的同步按钮,同步git库,同步完后,下面就会列出目前gogs里所有的git库,通过顶部搜索框也可以搜索要操作的项目,找到项目后,点击项目后面对应的激活按钮,如下图: 然后点击下面按钮进行激活配置: 一般保持默认,直接点save按钮即可。 激活后,Drone就会激活gogs的webhook,监听代码变化,当有代码发生变动时,就会触发Drone的pipeline。 下面就来看下pipleline的配置方法,我们以一个maven工程为例,实现把一个maven工程进行自动编译,然后打包成容器镜像,并推送到私有容器仓储里。 1,首先建立一个maven工程,里面添加自己的测试代码。 2,在项目的根目录下创建.drone.yml文件,这是配置pipeline的文件,drone工作都是靠它来说明的。 3,文件结构如下: kind: pipeline name: default steps: *****  steps里配置的就是整个pipeline每一步的具体操作,我们实例第一步是要把项目进行编译

drone 1.0 新的定时任务界面&&构建任务支持重启

时光怂恿深爱的人放手 提交于 2020-04-25 07:19:52
drone 1.0 的定时任务是一个不错的功能,早期的版本是必须使用cron 表达式的 最近发布的版本支持通过配置就可以了,很方便,只是目前比较简单的,支持小时、 天、周、月、年的模式 环境准备 docker-compose 文件 version: '3' services: drone-server: image: drone/drone:1.0.0-rc.1 ports: - "80:80" volumes: - ./drone:/var/lib/drone/ environment: - DRONE_OPEN=true - DRONE_SERVER_HOST=drone-server - DRONE_DEBUG=true - DRONE_GIT_ALWAYS_AUTH=false - DRONE_GOGS=true - DRONE_GOGS_SKIP_VERIFY=false - DRONE_GOGS_SERVER=http://gogs:3000 - DRONE_PROVIDER=gogs - DRONE_DATABASE_DATASOURCE=/var/lib/drone/drone.sqlite - DRONE_DATABASE_DRIVER=sqlite3 - DRONE_SERVER_PROTO=http - DRONE_RPC_SECRET

Drone 持续集成实践

空扰寡人 提交于 2020-04-25 06:29:01
Drone 官方示例 - Example Go project 用 Docker 部署 Go 服务器 Golang 官方示例 - outyet 一个生产环境的例子 用 rsync 复制文件的方式进行部署的例子 实际的 DevOps 项目中,在 pipeline 流水线中包含下载代码、测试、构建、发布、部署、通知等步骤。基本流程如下,当然不同的语言或不同的需求下流程会有所差异: clone -> test -> build -> publish -> deploy -> notify 包含开发的完整流程为: 开发项目代码,包括 .drone.yml 文件和 Dockerfile 文件 上传代码至 Gogs,通过 Gogs 的 webhook 触发 Drone 的 Pipeline Drone 开始 Pipeline 的执行 clone 代码至容器 测试 编译代码,构建可执行文件(Java、Golang 等编译型语言需要,PHP 之类的脚本语言则不需要) 将项目和运行环境打包成镜像,发布到 Registry(当然也可以使用 rsync 将编译后的文件(Golang 等)或源码(PHP 等)部署到服务器,此时需要在目标服务器提前安装运行环境) 部署至生产环境 发送邮件等通知信息 Drone 的文档挺差劲,不过 Drone 用起来还是挺简单的,比 Jenkins 简单到无法描述。 打通

ASP.NET Core & Docker & Jenkins 零基础持续集成实战

若如初见. 提交于 2020-04-24 23:06:38
原文: ASP.NET Core & Docker & Jenkins 零基础持续集成实战 一.本系列教程说明 源代码管理工具:Gogs 持续集成工具:Jenkins 容器:Docker 二.git管理软件的选择 没有采用gitlab,因为gitlab比较吃配置,至少得2核4G的配置。采用go语言开发的gogs来代替,搭建方便(不到10分钟就能安装完成),资源消耗低,功能也比较强大,也非常实用。但是在企业开发中(企业买台高配服务器运行gitlab不过分吧,个人就没必要了),个人还是推荐使用 gitlab 。 关于gogs和gitlab的比较请参考下面的文章: 如何评价Gogs?跟GitLab比起来有何优缺点? 20 天之后由 gitlab 迁移到了 gogs Gogs:可能是比Gitlab更好的选择 三.教程目录 1.配置免费HTTPS证书 Gogs需要 2.安装Gogs 一个轻量级gitserver,类似于gitlab 3.安装Docker 4.Docker配置加速器 一定要配置,提升Docker拉取镜像速度 5.CentOS 7 安装 Jenkins 6.ASP.NET Core 持续集成 (自由风格&Pipeline) 7.Jenkins配置Gogs webhook插件 提交代码以后,通过webhook推送事件到Jenkins,比轮询方式好 8.Jenkins持续集成演示

Window环境下使用多个Git账号(github,gitee,gitlab,gogs等)

∥☆過路亽.° 提交于 2020-04-24 03:05:39
个人电脑之前已经设置好github账号了,公司用的是gitlab私服,一直互不干扰,因为用的是不同的电脑,也就懒得配置git多账户环境。最近看了一下多年空空如也的码云,想着怎么的也会用到gitee来托管代码的吧,那么现在就来把git环境准备一下吧,先。 生成githee密钥 在桌面右键git bash here,执行命令 ssh-keygen -t rsa -C email 为gitee创建sshkey,我的电脑已经配置好github账号的,之前没有取别名,默认就是id_rsa,所以enter file这行给gitee密钥取个别名id_rsa_gitee,需不需要密码,看自己需求,我是没有设置密码的,所以enter passphrase这行直接回车了。回车确认后会在桌面创建两个文件,id_rsa_gitee和id_rsa_gitee.pub。 账号关联 将这两个文件移动到用户名下的.ssh目录下,复制id_rsa_gitee.pub里面的内容,在码云新增一个ssh公钥。 多账号git配置 在.ssh目录下新增一个config文件,我是创建了一个config.txt文本文件,然后将后缀去掉。用编辑器来创建这个文件也是一样的。如果github和gitee账号不一样的话,配置不同的账号也是支持的。config内容如下: # github Host github.com HostName

[Notes] 使用gogs搭建私有git仓库

六眼飞鱼酱① 提交于 2020-04-02 23:52:05
之前一直是在服务器上采用原生git和客户端同步,这样做的话只能满足基本需要,如果要和其他人同步或者进行版本查看等都不是很方便。 glogs是一个极易搭建的自助 Git 服务,轻量级,易移植,很方便我这种希望快速搭建,且经常换服务的人。 这里选用docker安装,方便快捷。 首先下载docker镜像(docker本身已经装好)。 docker pull gogs/gogs 创建gogs存储的目录 mkdir /data0/lgy/gogs/后台 后台运行docker容器 docker run --name=private-gogs -d -p 10022:22 -p 10080:3000 -v /data0/lgy/gogs:/data gogs/gogs 初次访问配置(参考官方文档: https://github.com/gogs/gogs/tree/master/docker ) 登录ip:10080即可登录网页,初次登录需要配置。 要注意,需要将“应用url”改为服务器Ip:10080,这个端口和docker内部的3000进行了绑定。 迁移已有的git项目 利用管理员账号,创建一个用户,使之和需要迁移的git服务账号有同样的用户名和邮箱。 添加其他pc的公钥到新建账户中。 在保存有项目的pc上, cat ~/.ssh/id_rsa.pub   将公钥贴入

go语言周边

旧城冷巷雨未停 提交于 2020-03-27 23:11:28
博主收藏的go语言资料,分享一波~~~ 官网 https://golang.org/ (被墙) 镜像: http://docscn.studygolang.com/ 下载镜像: https://gomirrors.org/ Go Playground: https://play.studygolang.com/ https://play.yeyuqiu.com/ https://play.gopherd.com/ 提示:可以参考 https://github.com/golang/playground 搭建自己的Go Playground。 教程 astaxie/build-web-application-with-golang: A golang ebook intro how to build a web with golang https://github.com/astaxie/build-web-application-with-golang chai2010/advanced-go-programming-book: 《Go语言高级编程》开源图书,涵盖CGO、Go汇编语言、RPC实现、Protobuf插件实现、Web框架实现、分布式系统等高阶主题(完稿) https://github.com/chai2010/advanced-go-programming-book

gogs搭建属于自己的git网站

 ̄綄美尐妖づ 提交于 2020-03-05 11:19:23
gogs简介 gogs是一款极易搭建的自助 Git 服务, 掌握了它, 我们就可以搭建自己的git服务站点 gogs官网: https://gogs.io/ , github中文地址: https://github.com/gogs/gogs/blob/master/README_ZH.md 参考 https://www.jianshu.com/p/86c385682ac8 部署 下载gogs的docker镜像 # 下载gogs的docker镜像 docker pull gogs/gogs 运行镜像, 产成容器 # 创建gogs容器存储的目录 mkdir -p /var/gogs #生成镜像 docker run --name=yu-gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs #参数说明: # --name=yu-gogs 容器的名字为yu-gogs # -p 10022:22 -p 10080:3000 端口的映射,主机的10022映射为ssh服务,10080为http服务的端口 # -v /var/gogs:/data 目录挂载 配置 运行容器 通过浏览器访问-->公网ip地址:10080 使用sqlite3免配置数据库 域名为:Linux公网IP地址 ssh端口号为:10022(映射Linux)

一款易搭建,运行快的Git服务器:Gitea安装教程

旧城冷巷雨未停 提交于 2020-03-04 07:15:22
说明:Gitea是从Gogs发展而来,同样的拥有极易安装,运行快速的特点,而且更新比Gogs频繁很多,维护的人也多,个人认为Gitea还是更好一些的,这里就说下安装方法。 截图 简介 Gitea是一个极易安装,运行非常快速,安装和使用体验良好的自建Git服务。采用Go作为后端语言,这使得只要生成一个可执行程序即可。并且他还支持跨平台,支持Linux、macOS和Windows以及各种架构,除了x86,amd64,还包括ARM和 PowerPC。 Github地址: https://github.com/go-gitea/gitea 功能 支持活动时间线 支持SSH以及HTTP/HTTPS协议 支持SMTP、LDAP和反向代理的用户认证 支持反向代理子路径 支持用户、组织和仓库管理系统 支持添加和删除仓库协作者 支持仓库和组织级别Web钩子(包括Slack集成) 支持仓库Git钩子和部署密钥 支持仓库工单(Issue)、合并请求(Pull Request)以及Wiki 支持迁移和镜像仓库以及它的Wiki 支持在线编辑仓库文件和Wiki 支持自定义源的Gravatar和Federated Avatar 支持邮件服务 支持后台管理面板 支持MySQL、PostgreSQL、SQLite3、MSSQL和TiDB(实验性支持)数据库 支持多语言本地化(21种语言) 二进制安装 1、安装

GOGS 忘记管理员密码

拥有回忆 提交于 2020-03-02 11:18:54
1、百度下载 sqlitespy 2、解压打开程序,打开数据库 D:\Git\Gogs\data\gogs.db 3、找到user表 找到gogs数据库中user表,直接复制已知账号的 passwd、rands、salt 信息到管理员账号对应的字段下,保存即可 左侧找到表,选中,按回车,进入sql模式,输入sql,按F9执行语句 来源: https://www.cnblogs.com/wdw31210/p/12394130.html