使用Docker配置gitea代码仓库
之前代码都是托管在jihulab
,最近试用到期了,遂转投Github
发现居然LFS
只有1GB的免费额度,超过之后需要收费,果断又放弃。由于自己有几台闲置的云服务器,因此考虑自行搭建。之前使用过gogs
,这次准备尝试一下其衍生版gitea
。
没有云服务器的小伙伴可以看看阿里云/腾讯云有没有什么活动,或者可以白piao试用一个来进行实验。
Gitea
的搭建非常容易,官方提供了对应的docker-compose.yml
文件,在docker
是好用的情况下一行命令即可启动服务。
需要注意的是如果拉去镜像出现TLS handshake timeout
这个错误是由于网络环境不稳定造成的,可以尝试更改docker
的下载镜像解决。
version: "3"
networks:
gitea:
external: false
services:
server:
image: gitea/gitea:1.21.7
container_name: gitea
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=db:5432
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=gitea
restart: always
networks:
- gitea
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "3000:3000"
- "222:22"
depends_on:
- db
db:
image: postgres:14
restart: always
environment:
- POSTGRES_USER=gitea
- POSTGRES_PASSWORD=gitea
- POSTGRES_DB=gitea
networks:
- gitea
volumes:
- ./postgres:/var/lib/postgresql/data
使用命令启动服务
# 最新docker版本使用如下命令
docker compose up
# 老版本使用以下命令启动
docker-compose up
访问服务器的地址+端口号如:http://<server-ip>:3000
即可显示安装界面
安装完成后,创建用户即可使用
如果要关闭公开注册则可以设置app.ini
文件,然后重启下容器即可
[service]
DISABLE_REGISTRATION = true
感谢扫码支持