源链接:https://xeylon.com/docker/438.html
Gogs官网:
https://gogs.io/
参考资料:
https://github.com/gogs/gogs/tree/main/docker
基本介绍:
Gogs 是一款极易搭建的自助 Git 服务。
本文仅为通过宝塔下的Docker方式安装Gogs的教程。
1. 宝塔下通过软件商店安装Docker管理器
2. 通过服务器命令拉取Gogs镜像,创建Gogs配置目录,设置好端口转发,然后启动镜像并设置自动启动
docker pull gogs/gogs
mkdir -p /var/gogs
docker run -d --name=gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs
docker start gogs
docker update --restart=always gogs
docker pull gitea/gitea:latest
mkdir -p /var/gitea
docker run -d --name=gitea -p 10022:22 -p 10080:3000 -v /var/gitea:/data gitea/gitea:latest
docker start gitea
docker update --restart=always gitea
3. 宝塔中添加网站设置并配置反向代理,实现外部访问
添加一个静态网站,用于作为Gogs的web访问
如需https访问可在反向代理设置前配置好SSL(反向代理开启后则无法再设置SSL)
设置反向代理实现访问静态网站时映射到Docker里Gogs的Web服务
目标Url格式为 内网ip:端口
4. 反向代理生效后,访问静态网站地址实现访问Gogs的10080端口,从而实现进入到浏览器引导安装Gogs的界面
配置并安装Gogs(此处选择了SQLite3 数据库,其他数据库请根据情况配置)
域名调整为:建好的静态网站的域名(不加http)
SSH端口调整为:10022
应用URL调整为:建好的静态网站的域名(加http)
5. 安装成功后注册第一个账号系统将默认设置其为管理员
6. 第一个作为管理员的用户将可以在头像菜单中通过“管理面板”实现相关管理功能,此时搭建已成功,并且支持https方式访问
7. 注意:Gogs的系统配置不支持通过网页端修改,需直接修改配置文件app.ini
安装时我们将Docker中的Gogs配置文件目录设为/var/gogs了,因此只需在所在服务器中执行如下命令即可修改Gogs的系统配置
vi /var/gogs/gogs/conf/app.ini
8.关于大文件上传失败HTTP 413 curl 22 The requested URL returned error: 413
把http 站点的上传大小 改大。不够改到500M 我单次上传文件很大
server
{
listen 80;
listen 443 ssl http2;
server_name test.baidu.com
client_max_body_size 500M;
}
以下是报错信息
error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 Request Entity Too Large
fatal: The remote end hung up unexpectedly
git config http.postBuffer 524288000 没有效果,后来发现确实是nginx的配置问题
Just load your nginx.conf and add client_max_body_size 50m; ( changing the value to your needs ) in the http block.
9.卸载gogs
如果你使用了 docker run
命令创建了一个名为 gogs
的容器,并且想要撤销这个操作,你需要先停止并删除该容器,然后再删除 Gogs 的镜像。
首先,使用以下命令停止名为 gogs
的容器:
docker stop gogs
然后,使用以下命令删除该容器:
docker rm gogs
接下来,你可以使用 docker rmi
命令删除 Gogs 的镜像:
docker rmi gogs/gogs
这个命令将会删除 Docker 镜像 gogs/gogs
。在删除镜像之后,你可以使用 docker pull gogs/gogs
命令重新下载该镜像。
需要注意的是,删除容器将会删除该容器中的所有数据和设置。如果你希望保留这些数据和设置,你可以使用 docker commit
命令将容器转换为镜像,并将其保存到本地或上传到 Docker Hub。例如,你可以使用以下命令将名为 gogs
的容器转换为镜像:
docker commit gogs my-gogs
这个命令将会创建一个名为 my-gogs
的新镜像,其中包含名为 gogs
的容器的所有数据和设置。你可以使用 docker image ls
命令查看本地镜像的列表,找到新创建的镜像。然后,你可以使用 docker run
命令创建一个新的容器,并在其中运行该应用程序。
10.Gitea配置禁止用户注册
找到gitea的配置文件gitea/conf/app.ini,把下面的设置改为true即可:
[service]
DISABLE REGISTRATION = true