1. 安装Gitea镜像
qnap Container Station - 创建 - 创建应用程序(yaml文件, 与docker compose文件建立docker container完全相同)
version: '3.3'
services:
gitea_db:
image: mysql:5.7
container_name: gitea_db
restart: always
environment:
MYSQL_DATABASE: gitea
MYSQL_ROOT_PASSWORD: [mysql root password]
MYSQL_USER: gitea
MYSQL_PASSWORD: [mysql root password]
volumes:
- db_data:/var/lib/mysql_gitea
ports:
- "[host sql port for sql container]:3306"
networks:
- gitea-network
gitea_app:
depends_on:
- gitea_db
image: gitea/gitea
container_name: gitea_app
restart: always
ports:
- "[host ssh port for gitea container]:22"
- "[host http port for gitea container]:3000"
volumes:
- [gitea config and data path in nas]:/data
networks:
- gitea-network
volumes:
db_data:
app_data:
networks:
gitea-network:
driver: "bridge"
1.1. gitea install配置参考
如果sql服务器中没有保存以前的gitea配置, 首次打开gitea页面会显示安装配置
- 数据库主机可以配置nas服务器的内网地址和sql docker出口端口, 数据库密码


1.2. gitea 配置样例
gitea/app.example.ini at main · go-gitea/gitea
-
不要复制conf/app.ini到custom文件夹下, 直接修改conf/app.ini. 不然配置会无法生效.
-
REPO_INDEXER_ENABLED开启代码搜索, 但是会占用空间约6倍与源仓库需注意. -
挑选部分建议修改的配置
[repository] ROOT = /data/git/repositories [service] DISABLE_REGISTRATION = true REQUIRE_SIGNIN_VIEW = true REGISTER_EMAIL_CONFIRM = false ENABLE_NOTIFY_MAIL = false ALLOW_ONLY_EXTERNAL_REGISTRATION = false ENABLE_CAPTCHA = false DEFAULT_KEEP_EMAIL_PRIVATE = false DEFAULT_ALLOW_CREATE_ORGANIZATION = false DEFAULT_ENABLE_TIMETRACKING = true NO_REPLY_ADDRESS = noreply.localhost ; close openid signin/signup [openid] ENABLE_OPENID_SIGNIN = false ENABLE_OPENID_SIGNUP = false
2. Github或其他平台代码迁移到Gitea
gitlab代码迁移的同时, 保留之前的提交记录信息.
-
在Gitea中新建一个项目的仓库,用来存放后面需要拷贝的代码信息
-
将对应的镜像push到新的仓库地址
git push --mirror 新仓库地址 git push --mirror http://[ip address]:[http port]/xxx/xxx.git git push --mirror ssh://git@[ip address]:[ssh port]/xxx/xxx.git -
将本地仓库的远程地址替换为当前的仓库地址.
git remote set-url origin 新仓库地址 //将本地远程仓库地址改为新地址