美文网首页
Gitlab快速上手(安装定时备份还原)

Gitlab快速上手(安装定时备份还原)

作者: 阿彬_1260 | 来源:发表于2020-03-15 18:44 被阅读0次

    简介

          GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

    安装

    #  拉取下镜像

            使用Docker安装Gitlab汉化版本  :

                    docker pull twang2218/gitlab-ce-zh  

                   验证:docker image 查找下有没有twang2218/gitlab-ce-zh 

    #  使用Docker-compose快速安装

            1、创建编写下 docker-compose.yml配置文件(文件名可自己取)

    ```

    version: "3"

    services:

      gitlab:

        image: 'twang2218/gitlab-ce-zh:latest'

        container_name: "docker-gitlab"

        restart: always

        privileged: true

        hostname: 'xxx.xxx.xxx.xxx'

        environment:

          TZ: 'Asia/Shanghai'

          GITLAB_OMNIBUS_CONFIG: |

            external_url "http://xxx.xxx.xxx.xxx:9090"

            gitlab_rails['gitlab_shell_ssh_port'] = 10022

            gitlab_rails['time_zone'] = 'Asia/Shanghai'

        ports:

          - '9090:9090'

          - '10443:443'

          - '10022:22'

        volumes:

          - '/opt/docker-gitlab/config:/etc/gitlab'

          - '/opt/docker-gitlab/data:/var/opt/gitlab'

          - '/opt/docker-gitlab/logs:/var/log/gitlab'

    ```

            上面的yml是示例,具体请跟您的需要更改container_name(容器名)xxx.xxx.xxx.xxx指的要部署服务的IP名,ports(端口)请先检查下要用的端口有没被占用,volumes(软链接)推荐加入软链接后续找备份文件及配置文件更改多比较方便,具体改成您需要的目录地址

        2、创建启动容器

                进入docker-compose.yml配置文件的位置

                执行  docker-compose up -d

                验证:docker-compose ps 查看下刚才有没创建容器成功

        3、访问地址

                看您刚才设置的IP名和端口是啥,如上面案例的话就访问:

                    http://xxx.xxx.xxx.xxx:9090

                    首次打开时,需要设置用密码。默认用户名为root。


    定时备份

            按照上面的步骤,是不是很简单就完成Gitlab的搭建,接下来我们需要为Gitlab做定时备份,防止数据误删或者服务器重启Gitlab挂了等原因。

                Gitlab备份:把仓库代码打包成XXXXX.tar的压缩包,我们在gitlab容器里面调用gitlab-rake gitlab:backup:create来实现备份

                Gitlab还原:就是把备份的包给它还原回去勒,我们在gitlab容器里面调用gitlab-rake gitlab:backup:restore BACKUP=备份文件编号 来实现还原

                定时备份:就是设置个时间去执行备份代码,通过Linux的crontab命令去执行

            为了更方便使用,我们直接写xx.sh文件,放入要执行的备份的代码,然后在crontab调用这个xx.sh文件

           创建auto_backup.sh文件 

    ```

    #! /bin/bash

    docker exec docker-gitlab gitlab-rake gitlab:backup:create

    ```

           auto_backup.sh文件包含两步操作:1.进入docker-gitlab容器 2.执行备份

            验证:先给这个文件加个操作权限,然后验证下auto_backup.sh有没执行。

                        稍等会去看下备份目录下有没有xxx.rar。

                        gitlab的备份目录默认在/var/opt/gitlab/backups,但我们创建docker-compose.yml配置文做了volumes: - '/opt/docker-gitlab/data:/var/opt/gitlab',所以也可以在'/opt/docker-gitlab/data下的backups去看下有没xxx.rar。如果有的话说明成功,接下去只要做定时就完事了。

    ```    

    chmod 777 /opt/auto_backup.sh

    /opt/auto_backup.sh

    ```

            定时:

               执行 crontab -e,输入00 20 * * * /opt/auto_backup.sh,/opt/auto_backup.sh指刚才穿件auto_backup.sh的文件为置,设置每天晚上8点自动备份,具体时间可以修改参照crontab具体写法

    ```

    crontab -e

    00 20 * * * /opt/auto_backup.sh

    ```

    相关文章

      网友评论

          本文标题:Gitlab快速上手(安装定时备份还原)

          本文链接:https://www.haomeiwen.com/subject/bhdzoxtx.html