使用 Ubuntu Server 与 Docker 建立 Gitea 程式储存库

在资安越来越严苛的情况下
公司内部通常需要一个版本控制的储存库以方便进行存储观看程式与版本历史
这时我最近发现有一个很火的 Git 储存库 Gitea 可以非常方便安装使用
接下来用 做一杯茶的时间 一起安装 Gitea 吧!

安装 Ubuntu Server 与 Docker

至 Ubuntu Server 下载 iso 档案并安装选择:Option 2 - Manual server installation当前环境安装 Ubuntu Server 21.10安装完成将系统版本更新至最新:
  sudo apt update && sudo apt upgrade && sudo apt dist-upgrade
使用脚本安装 Docker:
  curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyu
若出现 ca-certificates 问题则执行:
  sudo apt-get install --reinstall ca-certificates

建立 Gitea 程式储存库

安装最新版本 Gitea:
  sudo docker pull gitea/gitea:latest
建立 Git 储存库:
  sudo mkdir -p /var/lib/gitea
启动 Docker 容器:
  sudo docker run -d --privileged=true --restart=always \  --name=gitea -p 10022:22 -p 10080:3000 \  -v /var/lib/gitea:/data \  -v /etc/localtime:/etc/localtime:ro \  -v /etc/timezone:/etc/timezone:ro \  gitea/gitea:latest
-d(--detach):代表执行 container 并印出 container ID--privileged=true:使用该参数让 container 内的 root 拥有真正的 root 权限--restart=always:重启时将自动重启容器-p(--publish):将容器的指定端口发布到主机(主机端口:容器端口)-v(--volume):使用指定储存库(主机目录:容器目录)参考文件访问 http://localhost:10080 设定 Gitea原则上若没指定资料库则使用预设 SQLite重点!在基础 url 填写外部呼叫的 url 如:http://yourIp:yourPort若使用预设则在 push 档案时 gitea 页面会显示 http://localhost:容器端口可至 /var/lib/gitea/gitea/conf/app.ini 进行重设

备份 Git 储存库

安装 sshpass:
  sudo apt-get -y install sshpass
-y:对所有询问都给予肯定,同时不做任何提示在 Ubuntu Server 21.10 安装时已包含 tar、rsync、crontab 故无须再重新安装压缩 Git 储存库:
  sudo tar zcvf /var/lib/gitea/gitea.tar.gz /var/lib/gitea
解压缩:
  sudo tar zxvf /var/lib/gitea/gitea.tar.gz
备份至远端:
  sshpass -p 'remote_password' \  rsync -azvh /var/lib/gitea/gitea.tar.gz \   user@remoteIp:path
rsync 介绍删除压缩档:
  sudo rm -rf /var/lib/gitea/gitea.tar.gz
另外可使用 crontab 进行排程任务备份crontab 介绍

Firefox 端口阻挡解决方法

网址列输入:about:config搜寻:network.security.ports.banned.override点选 string 并加入 port 刷新页面即可

参考资料

安装 dockerDocker 安装 giteaFirefox: This address is restricted 问题

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章