基于 docker-compose 的 gitea 创建+运行+备份全流程

0.此博客信息

创建时间: 2023-04-01
最新修改时间: 2023-04-01
官方参考文档:https://gitea.io/en-us/

1.docker-compose文件

官方文档参考
注意,我这里挂载了tmp目录,用来备份的时候使用

version: "3"

networks:
  gitea:
    external: false

services:
  server:
    image: gitea/gitea:1.19.0
    container_name: gitea
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - GITEA__database__DB_TYPE=mysql
      - GITEA__database__HOST=db:3306
      - GITEA__database__NAME=gitea
      - GITEA__database__USER=gitea
      - GITEA__database__PASSWD=gitea
      - TZ=Asia/Shanghai
    restart: always
    networks:
      - gitea
    volumes:
      - ./gitea:/data
      - ./gitea/tmp:/tmp
    ports:
      - "3000:3000"
      - "3422:22"
    depends_on:
      - db

  db:
    image: mysql:8
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=gitea
      - MYSQL_USER=gitea
      - MYSQL_PASSWORD=gitea
      - MYSQL_DATABASE=gitea
      - TZ=Asia/Shanghai
    networks:
      - gitea
    volumes:
      - ./mysql:/var/lib/mysql

2.运行后状态

在这里插入图片描述
我的目录如下
在这里插入图片描述

3.入一些测试数据

就是创建一些账号,然后添加一些组织和数据
在这里插入图片描述

4.进行备份

参考官方文档 https://docs.gitea.io/en-us/backup-and-restore/
把zip备份到tmp目录下
备份命令

docker exec -u git -it -w /tmp 094341c71e68 bash -c '/usr/local/bin/gitea dump'

在这里插入图片描述

5.进行数据还原

5.1只需要docker-compose.yml和gitea-dump-1680355388.zip就行

在这里插入图片描述
5.2 docker compose up -d 启动容器
进入gitea容器执行下面命令

# open bash session in container
docker exec --user git -it 2a83b293548e bash
# unzip your backup file within the container
unzip gitea-dump-1610949662.zip
cd gitea-dump-1610949662
# restore the gitea data
mv data/* /data/gitea
# restore the repositories itself
mv repos/* /data/git/repositories/
# adjust file permissions
chown -R git:git /data
# Regenerate Git Hooks
/usr/local/bin/gitea -c '/data/gitea/conf/app.ini' admin regenerate hooks

5.3 进入 mysql容器

mysql --default-character-set=utf8mb4 -u$MYSQL_USER -p$MYSQL_PASSWORD $MYSQL_DATABASE <gitea-db.sql

5.4 进入 gitea界面
在这里插入图片描述
勾选下面3个选项就可以了
在这里插入图片描述
这个时候数据就恢复到之前的状态了

在这里插入图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

军大君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值