Doeker implantação gitlab
Espelho 1.gitlab puxando
# gitlab-ce为稳定版本,后面不填写版本则默认pull最新latest版本
$ docker pull gitlab/gitlab-ce
2. Execute gitlab Espelho
docker run -d -p 4003:443 -p 4001:80 -p 4002:22 --name gitlab --restart always -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
3. Configure
de acordo com a forma acima, recipiente gitlab executar nenhum problema, mas quando você cria um projeto em um gitlab, endereço de acesso URL gerada pelo projeto é gerar o nome do host do recipiente, que é o ID do recipiente. Como servidor gitlab, precisamos acessar um endereço URL é fixo, então você precisa gitlab.rb configure (caminho host: /home/gitlab/config/gitlab.rb).
# gitlab.rb文件内容默认全是注释
$ vim /home/gitlab/config/gitlab.rb
# 配置http协议所使用的访问地址,不能加端口,加端口无法访问,这里使用默认80
external_url 'http://39.104.91.250'
# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '39.104.91.250'
gitlab_rails['gitlab_shell_ssh_port'] = 4002 # 此端口是run时22端口映射的4002端口
# 重启gitlab容器
$ docker restart gitlab
Neste endereço do projeto do armazém tinha mudado. Se o endereço não é a porta ssh padrão 22, ele irá adicionar ssh: // cabeçalho de protocolo
para abrir o navegador e digite o ip: número da porta de acesso. Aqui está http://39.104.91.250:4001
backup automático
1. Crie um backup de arquivos de script auto_backup.sh
:
#! /bin/bash
docker exec gitlab gitlab-rake gitlab:backup:create
2. /etc/crontab
Momento perfil tarefa:
0 2 * * * root /home/gitlab/data/backups/auto_backup.sh
0 2 * * *
Dia duas da manhã
Limpeza de backup automático
1. Crie um backup de arquivos de script auto_delete.sh
:
find /home/gitlab/data/backups/ -mtime +7 -type f -name "*.tar" -exec rm -rf {} \;
Localizar e / Excluir / gitlab / data / backups / diretório tempo de modificação de conteúdo (mtime) 7 dias atrás arquivos tar (do tipo F) e apagar (rm-rf)
2. /etc/crontab
Momento perfil tarefa:
* 22 * * 6 root /home/gitlab/data/backups/auto_delete.sh
* 22 * * 6
Todo sábado à noite 22:00
Referência:
Sob gitlab janela de encaixe que a instalação
gitlab backup automático, backup a limpeza e recuperação
código gitlab para estivador backup automático implantado
para encontrar a pasta especificada / excluir o linux pasta especificada