环境
- 宝塔 8.0
- gogs
- ubuntu 22.04
前言
Gogs
是一个类似 github
和 gitlab
的基于 git
的代码托管平台,是一款开源软件,配置非常简单,中文也支持得非常好,你完全可以在你的服务器上搭建,而且它还是轻量级的,占用的资源较 gitlab
少了很多,二进制安装方法见之前的文章 https://xugaoxiang.com/2020/01/15/gogs/。本篇主要介绍如何使用 docker
来进行安装,相较于二进制文件安装更简单。
我是在自购的 VPS 上进行安装,操作系统是 ubuntu 22.04
,其它版本类似。
实操
docker安装
一般的 vps
默认都安装了 docker
,如果没有预装,也没关系,可以按下面命令操作
curl -fsSL https://get.docker.com | bash -s docker
安装完成后,可以通过 docker version
来查看对应的版本号
gogs安装
创建一个文件夹,用来存放 gogs
的配置文件、代码库、日志等
mkdir gogs
拉取 gogs
镜像
docker pull gogs/gogs
运行容器
docker run --name=gogs -p 10022:22 -p 10080:3000 -v ~/gogs:/data gogs/gogs
这里做了2个端口映射,gogs
的默认端口是3000,ssh
的默认端口是22,10022和10080是对外的端口
接着,就可以来到浏览器,打开地址 http://ip:10080/install,注意,这里的端口是 10080
不出意外的话,这里会碰到浏览器无法打开站点的提示,报错信息是 ERR_UNSAFE_PORT,这是浏览器安全机制导致的无法访问,目前主流的浏览器都是这种表现
如果你使用的是 chrome
,就关闭浏览器,然后在桌面找到浏览器图标,点击右键选择属性,在目标后跟上 --explicitly-allowed-ports=10080
(最前面有个空格),然后点击保存,最后双击图标,重新打开 chrome
浏览器,访问上面的地址
如果你使用的是 firefox
,打开一个新标签页,地址栏输入 about:config
,点击回车,然后搜索首选项 network.security.ports.banned.override
,如果没有就手动添加,将值设置为10080,类型是字符串,最后保存后重启浏览器
如果你使用的是 edge
,在搜索栏中输入 regedit
,回车打开系统注册表,进入 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\ExplicitlyAllowedNetworkPorts
,这个路径不一定存在,如不存在就自行创建,然后在 `ExplicitlyAllowedNetworkPorts· 新建一个名称为 1 的字符串值,修改其值为10080,最后重启浏览器
进入了安装界面后,就可以填入对应的信息了,数据库简单起见,就选 SQLite3
别忘记填写管理员账号信息,其它保持默认即可,安装完成后,就可以进入到 gogs
的主页了
服务虽然跑起来了,不过你可能还需要配置一些其它的信息,gogs
的配置文件存放在gogs/gogs/conf/app.ini
,根据自己的需求修改
再比如域名,反向代理这些,则可以借助宝塔面板来设置,非常的简单直观。
gogs服务启动
如果是第一次安装,gogs
服务会自动启动。如果服务已经停止,可以执行下面命令来启动
docker start gogs
查看已经启动的容器,可以使用命令
docker ps
如果想要让 Linux
系统开机启动容器,可以先查看已启动容器的 id
,然后对容器设置进行更新
docker ps
docker update --restart=always $docker_id