• docker安装gitlab,redis,postgresql搭建代码托管环境


    配置加速器

    可以参考下面链接去配置一下docker加速器(不过还是推荐用aliyun的)

    http://blog.csdn.net/gzhouc/article/details/65934897


    拉取镜像

    docker pull sameersbn/gitlab:9.1.4
    docker pull sameersbn/postgresql:9.6-2
    docker pull sameersbn/redis:latest

    上述的版本大家可以去查找最新的版本。


    创建数据文件夹, 位置随意,大家记下即可

    mkdir /home/YOUDIR/opt/gitlab/data

    mkdir /home/YOUDIR/opt/postgresql/data


    启动postgresql

    docker run --name=postgresql -d
    -e 'DB_NAME=gitlabhq_production' -e 'DB_USER=gitlab' -e 'DB_PASS=password'
    -v /home/YOUDIR/opt/postgresql/data:/var/lib/postgresql
    sameersbn/postgresql:9.6-2

    上述的位置与数据文件夹保持一致。


    启动redis

    docker run --name=redis -d sameersbn/redis:latest


    启动gitlab

    docker run --name='gitlab' -d
    --link redis:redisio
    -v /home/username/opt/gitlab/data:/home/git/data
    -p 10022:22 -p 10080:80
    -e 'GITLAB_PORT=10080'
    -e 'GITLAB_SSH_PORT=10022'
    --link postgresql:postgresql
    -e 'GITLAB_EMAIL=guanzh1@lenovo.com'
    -e 'GITLAB_BACKUPS=daily'
    -e 'GITLAB_HOST=10.100.208.12'
    -e 'GITLAB_SIGNUP=true'
    -e 'GITLAB_GRAVATAR_ENABLED=false'
    sameersbn/gitlab:9.1.4

    上述的位置与数据文件夹保持一致,更多参数请见这里https://github.com/sameersbn/docker-gitlab#postgresql 。

    上述设置会每天自动进行备份,建议开启。

    注:gitlab安装完成后默认用户名为root, 默认的密码如下:


    手动备份

    docker stop gitlab
    docker rm gitlab

    docker run --name='gitlab' -it --rm
    你的设置
    sameersbn/gitlab:9.1.4 app:rake gitlab:backup:create

    这样就会在/home/YOUDIR/opt/gitlab/data/backups下面创建备份,备份的所属者请看下ls -la /home/YOUDIR/opt/gitlab/data/backups下面的文件,迁移的时候有用,另外迁移的话,也只需要保留这个备份出来的文件即可。


    恢复备份

    确保你的gitlab的版本跟备份的版本一致。

    docker run --name='gitlab' -it --rm
    你的设置
    sameersbn/gitlab:9.1.4 app:rake gitlab:backup:restore

    这样就能确保迁移之后的版本跟迁移之前的版本一样了。


    迁移

    这个时候你只要在目标机器上做完准备工作之后,启动一次gitlab,然后把之前备份的文件放到/home/YOUDIR/opt/gitlab/data/backups下面,确保备份文件的权限问题之后恢复备份即可


    升级

    先备份,防止升级后出现问题,然后docker pull新的版本之后,直接run就可以了。


    如何从你的库来源完全镜像到gitlab


    git clone --mirror https://github.com/exampleuser/repository-to-mirror.git


    git remote set-url --push origin https://github.com/exampleuser/mirrored


    git fetch -p origin
    git push --mirror

    这个能保证你的来源在被提交的时候,gitlab能保持完全一致。

    最后只要指定时间关闭来源的提交之后久就可以无缝切换到gitlab了。


    REF

    https://github.com/sameersbn/docker-gitlab#available-configuration-parameters

    https://www.aswifter.com/2015/06/14/gitlab-with-docker/

  • 相关阅读:
    桥牌笔记:三个输墩压缩为一个
    读书笔记2013第7本:《杠杆阅读术》
    读书笔记2013第6本:《棋与人生》(一)
    《Two Dozen Short Lessons in Haskell》(二十)分数
    《Two Dozen Short Lessons in Haskell》学习(十八) 交互式键盘输入和屏幕输出
    Exercise: A Routine Day
    读书笔记2013第6本:《棋与人生》(二)
    读书笔记2013第8本:《超级快速阅读》
    TC的房子
    [转贴]Windows批处理调用程序后如何自动退出
  • 原文地址:https://www.cnblogs.com/double12gzh/p/10166101.html
Copyright © 2020-2023  润新知