安装 Gogs + Docker常用命令
介绍
本节主要写一下Jenkins的配置与自动构建过程,包括使用Gogs作为git服务器,配置自动构建等。
本节需要配合上一节的内容使用,即 安装 Docker + Jenkins 的服务器一台
搭建环境
- 服务器3 :TencentCloud 北京 RAM4G 2C 40GSSD(新用户机器)998RMB/3Year
- 操作系统 :CentOS7.5
- 部署环境 :LNMP1.6 (我是军哥铁粉)
服务器1:搭建Jenkins中转服务器,做代码自动构建使用
服务器2:生产环境服务器,实则测试服务器,部署代码使用
服务器3:Gogs服务器,Git版本库服务器,做代码版本控制使用
配置无需对标,都是低配置小鸡,唯一一个腾讯云 2C4G 的机器是我之前放其他业务的机器,由于git经常需要使用因此搭建在国内套CloudFlare使用,实则Gogs只需要 2C1G 机器即可,官方推荐配置是2C512M,是一个不吃内存的程序,目前腾讯云的 1C2G 只需要99/年,属于大众所承受的起的价格,由于我不是专职AFFMAN,因此不贴链接
CentOS7 安装 Docker
1 | yum -y install docker |
1 | start docker |
查看版本号,查看是否安装成功!1
docker -v
Docker 常用命令
记录一下安装时可能会出现的问题,以及常用的Docker命令
查看当前运行的容器1
docker ps
查看所有容器1
docker ps -a
停止容器1
2docker stop [DOCKER NAME]
例如:docker stop gogs
删除容器(必须在Stop之后才可以删除)1
2docker rm [DOCKER NAME]
例如:docker rm gogs
进入容器1
2
3
4docker attach [DOCKER NAME]
例如: docker attach gogs
docker exec -it [DOCKER IMAGE ID] /bin/bash
例如: docker exec -it ef5cb0692b57 /bin/bash
退出容器1
exit
查看容器变动日志1
2docker diff [DOCKER NAME]
例如:docker diff gogs
查看容器或者镜像详细信息1
2sudo docker inspect [IMAGE NAME]:0.1
例如: sudo docker inspect gogs
向容器内部发送指令1
2docker exec [DOCKER NAME] [COMMAND]
例如 docker exec gogs ls
安装 Gogs
安装
下载镜像 Gogs1
docker pull gogs/gogs
创建目录1
2mkdir -p /home/Gogs
cd /home/Gogs
开启Docker1
2
3
4 直接启动
docker run --name=gogs -p 10022:22 -p 10080:3000 -v /home/Gogs:/data gogs/gogs
后台启动
docker run --name=gogs -d -p 10022:22 -p 10080:3000 -v /home/Gogs:/data gogs/gogs
配置
正常启动后直接打开 http://ip:10080即可
如图:
接下来按照提示配置即可,我们这里使用SQLite3
应用配置需要注意一下
- 域名填写你的服务器公网IP
- SSH端口号填写 映射的端口号 10022
- HTTP端口号填写 3000
- 应用URL填写 ip + 映射的端口号 10080 访问
配置完成后如果设置好管理员账户的会自动登录进去,如果没有设置的可以自行注册。
注意:数据库中第一个用户就是管理员账户
Tips:Gogs的配置文件存放在 Docker中的 /data/gogs/conf/app.ini 如果想要更改可以
反向代理绑定域名
同 公司代码架构 - Docker + Jenkins + Gogs + Portainer(一)一样,在应用配置阶段修改或者修改配置文件都可以
结语
Gogs 是一个轻量级的 Git服务器,适用于一些小公司小团队使用,大公司使用Gitlab的情况可能更多一些,但是东西实际都是差不多的,为了占用资源更小一些,我这里还是选用了比较轻量级的Gogs