Gitea部署

链接

步骤1:安装Docker和Docker-compose

在Debian 11上安装Docker和Docker-compose非常简单。我们可以使用以下命令来安装它们:

  1. sudo apt-get update
  2. sudo apt-get install docker.io docker-compose

步骤2:创建Docker-compose文件

  1. 我们需要创建一个Docker-compose文件来定义Gitea容器的配置。
  1. version: "3"
  2. services:
  3. gitea:
  4. image: gitea/gitea:1.16.8
  5. container_name: gitea
  6. environment:
  7. - USER_UID=1000
  8. - USER_GID=1000
  9. - DB_TYPE=mysql
  10. - DB_HOST=ipv4:3306
  11. - DB_NAME=gitea
  12. - DB_USER=gitea
  13. - DB_PASSWD=gitea
  14. restart: always
  15. volumes:
  16. - /www/wwwroot/gitea/data:/data
  17. - /etc/timezone:/etc/timezone:ro
  18. - /etc/localtime:/etc/localtime:ro
  19. ports:
  20. - "3000:3000"
  21. - "22:22"
  1. 启动
    1. cd /www/wwwroot/gitea
    2. docker-compose up -d
  2. nginx配置
    1. location / {
    2. proxy_pass http://127.0.0.1:3000;
    3. proxy_set_header Host $host;
    4. proxy_set_header X-Real-IP $remote_addr;
    5. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    6. proxy_set_header REMOTE-HOST $remote_addr;
    7. # wss 支持
    8. proxy_http_version 1.1;
    9. proxy_set_header Upgrade $http_upgrade;
    10. proxy_set_header Connection "upgrade";
    11. }
  3. 访问 https://gitea.openjianghu.org 进行初始化项目
  • “服务器域名”:修改为网站域名:gitea.openjianghu.org
  • “基础URL”:修改为网站URL: https://gitea.openjianghu.org
  1. 停止
    1. cd /www/wwwroot/gitea
    2. docker-compose down -v

本地电脑配置 gitea ssh

  1. 配置 user.name & user.email
    1. git config --global user.name "username"
    2. git config --global user.email "xx@xx.com"
  2. 生产SSH Key
  1. ssh-keygen -t rsa -C "xxx@xxx.xx"
  2. Enter file in which to save the key (/xxx/xxx/.ssh/id_rsa): `/xxx/xxx/.ssh/gitea`
  1. 打开 ~/.ssh/config, 新增 域名与密钥的映射
    1. Host gitea.openjianghu.org
    2. HostName gitea.openjianghu.org
    3. User git
    4. Port 22
    5. PreferredAuthentications publickey
    6. IdentityFile /xxx/xxx/.ssh/gitea
  2. /xxx/xxx/.ssh/gitea.pub 里的文本配置到 https://gitea.openjianghu.org/user/settings/keys
  3. 创建一个 私有项目, clone 项目测试一下

备份方案 之 docker data & 数据库

  • 定时备份 /www/wwwroot/gitea/data
  • 定时备份 gitea数据库