2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Sisällysluettelo
1. Gitlab-komentorivi järjestelmänvalvojan salasanan vaihtamiseksi
3. Yrityksen kehityskoodin toimitusprosessi
4. Gitlabin varmuuskopiointi ja palautus
- [root@tty01 ~]# gitlab-rails console -e production # 启动GitLab的Rails控制台
- --------------------------------------------------------------------------------
- Ruby: ruby 3.1.4p223 (2023-03-30 revision 957bb7cb81) [x86_64-linux]
- GitLab: 16.11.5-jh (3a067aedcc3) EE
- GitLab Shell: 14.35.0
- PostgreSQL: 14.11
- ------------------------------------------------------------[ booted in 50.69s ]
- Loading production environment (Rails 7.0.8.1)
- irb(main):001:0> user = User.where(id: 1).first # id为1的是超级管理员
- => #<User id:1 @root>
- irb(main):002:0> user.password = 'Qq111111' # 密码必须至少8个字符
- => "Qq111111"
- irb(main):003:0> user.save! # 如没有问题 返回true
- => true
- irb(main):004:0> exit # 退出
- gitlab-ctl start # 启动所有 gitlab 组件;
- gitlab-ctl stop # 停止所有 gitlab 组件;
- gitlab-ctl restart # 重启所有 gitlab 组件;
- gitlab-ctl status # 查看服务状态;
- gitlab-ctl reconfigure # 启动服务;
- vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
- gitlab-ctl tail # 查看日志;
Projektipäälliköt (PM) luovat tehtäviä GitLabissa ja osoittavat ne kehittäjille:
Kun kehittäjä on saanut tehtävän, hän käyttää git-kloonia paikallisesti vetääkseen koodikirjaston:
git clone <仓库地址>
Kehittäjät luovat kehityshaaroja ja kehittävät:
dev
: git checkout -b dev
dev
Haaralla tehdään koodikehitystä ja -muokkauksia.Kun kehittäjä on valmis kehittämään, hän toimittaa sen paikalliseen varastoon:
git add . git commit -m "完成任务描述"
Kehittäjät hakevat haaran yhdistämispyyntöä (Merge request) GitLab-käyttöliittymässä:
git push origin dev
master
taimain
)。PM tarkistaa lähetykset ja koodimuutokset GitLabissa Kun olet varmistanut, että ne ovat oikein, vahvista, että kehittäjän haara yhdistetään päähaaraan.:
dev
Haara yhdistyimaster
haara.Kehittäjä vahvistaa, että Mark on suorittanut kehityksen GitLabissa, ja sulkee ongelman.:
close #1
(sisään#1
on ongelman numero), joten kun yhdistämispyyntö yhdistetään, siihen liittyvä ongelma suljetaan automaattisesti.
Tarkista järjestelmäversio ja ohjelmistoversio
- [root@tty01 ~]# cat /etc/redhat-release
- Rocky Linux release 9.4 (Blue Onyx)
- [root@tty01 ~]# cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
- 16.11.5-jh
Avaa /etc/gitlab/gitlab.rb-määritystiedosto ja tarkastele varmuuskopiointiin liittyvää asetuskohdetta:
- [root@tty01 ~]# vim /etc/gitlab/gitlab.rb #启用下述两个配置项
- gitlab_rails['manage_backup_path'] = true #指定GitLab是否应该自动管理备份路径
- gitlab_rails['backup_path'] = "/var/opt/gitlab/backups" #指定GitLab备份文件的存储路径
Tämä kohde määrittää oletusvarmuuskopiotiedoston polun. Voit muokata määritystä ja suorittaa sen gitlab-ctl määritä uudelleen tai käynnistä gitlab-ctl uudelleen Käynnistä palvelu uudelleen, jotta se tulee voimaan.
- [root@tty01 ~]# gitlab-ctl reconfigure
- 或
- [root@tty01 ~]# gitlab-ctl restart
Suorita varmuuskopiointikomento
[root@tty01 ~]# gitlab-rake gitlab:backup:create
Komennon suorittamisen jälkeen näyttöön tulee varoitusviesti:gitlab.rb
jagitlab-secrets.json
Tiedosto sisältää arkaluontoisia tietoja, eikä se sisälly tähän varmuuskopioon. Varmuuskopiota palautettaessa nämä tiedostot on varmuuskopioitava manuaalisesti.
Tietysti nämä voidaan tehdä myös suunniteltujen tehtävien yhteydessä.
Tarkista, ovatko varmuuskopiohakemistossa olevat tiedostot olemassa normaalisti
- [root@tty01 ~]# ls /var/opt/gitlab/backups/
- 1720624341_2024_07_10_16.11.5-jh_gitlab_backup.tar
Aseta varmuuskopion säilytysaika estääksesi varmuuskopioiden tekemisen päivittäin. On ehdottomasti olemassa vaara, että hakemisto on täynnä. Avaa /etc/gitlab/gitlab.rb-määritystiedosto ja etsi seuraavat asetukset.
- [root@tty01 ~]# vim /etc/gitlab/gitlab.rb # 启用下述两个配置项
- gitlab_rails['backup_keep_time'] = 604800 # 设置备份文件过期时间,604800秒等于7天
Määritetty aika on sekunneissa. Jos haluat lisätä tai lyhentää sitä, voit määrittää sen suoraan täällä ja käynnistää palvelun uudelleen komennolla gitlab-ctl restart.
Kun varmuuskopiointi on valmis, tar-paketti tämän päivän päivämäärällä luodaan varmuuskopiohakemistoon.
Kirjaudu sisään järjestelmänvalvojana ja poista kirjaston kohteet
Sinun on lopetettava datayhteyspalvelu ennen kuin palautat:
- [root@tty01 ~]# gitlab-ctl stop unicorn
- [root@tty01 ~]# gitlab-ctl stop sidekiq
Jos se on Taishinin rakentama isäntä, datayhteyden toimintaa ei yleensä tarvitse pysäyttää. Teoriassa on ok pysäyttää nämä kaksi palvelua. Näiden kahden palvelun pysäyttäminen on tietojen johdonmukaisuuden varmistaminen. Yleensä vanhan palvelimen /data/gitlab/backups-hakemistossa olevat varmuuskopiotiedostot kopioidaan uuden palvelimen /data/gitlab/backups -kansioon palautusta varten.
Huomautus käyttöoikeudet: 600 käyttöoikeutta ei voi palauttaa. Kokeiluympäristöksi voidaan vaihtaa 777. Tuotantoympäristössä on suositeltavaa muokata omistajaa ja ryhmää.
Kun olet suorittanut komennon, odota hetki... ja kirjoita sitten yes kahdesti suorittaaksesi palautuksen loppuun.
- [root@tty01 ~]# cd /var/opt/gitlab/backups/ #进入数据备份目录
- [root@tty01 backups]# gitlab-rake gitlab:backup:restore BACKUP=1720624341_2024_07_10_16.11.5-jh
Kiinnitä huomiota tiedoston nimeen BACKUP=:n jälkeen. Uudemmissa versioissa koko nimeä ei voi käyttää, joten tiedoston nimen jälkeen olevaa pistettä ei voi kirjoittaa tähän.
Kun palautus on valmis, voit nyt käynnistää kaikki palvelut uudelleen tai käynnistää vain kaksi aiemmin suljettua datayhteyspalvelua.
- [root@tty01 backups]# gitlab-ctl restart
- 或
- [root@tty01 backups]# gitlab-ctl start unicorn
- [root@tty01 backups]# gitlab-ctl start sidekiq
Huomautus: Gitlabin palauttamisen varmuuskopiotiedostojen avulla on varmistettava, että kahden isäntäkoneen gitlab-versiot ovat johdonmukaisia, muuten se ilmoittaa, että versiot eivät täsmää.
Päivitä tai kirjaudu sisään uudelleen nähdäksesi poistetut tiedot.
Muuta se sähköpostiosoitteeksi, sähköpostipalvelun tarjoajaksi, valtuutuskoodiksi, portiksi ja muihin tietoihin.
- [root@tty01 ~]# vim /etc/gitlab/gitlab.rb #找到并替换邮箱配置,更改你的邮箱进行测试
- gitlab_rails['smtp_enable'] = true
- gitlab_rails['smtp_address'] = "smtp.163.com"
- gitlab_rails['smtp_port'] = 465
- gitlab_rails['smtp_user_name'] = "[email protected]"
- gitlab_rails['smtp_password'] = "UWYNCPQOBQFCDLIW"
- gitlab_rails['smtp_domain'] = "smtp.163.com"
- gitlab_rails['smtp_authentication'] = "login"
- gitlab_rails['smtp_enable_starttls_auto'] = false
- gitlab_rails['smtp_tls'] = true
- gitlab_rails['smtp_pool'] = false
- gitlab_rails['gitlab_email_from'] = '[email protected]'
Tallenna ja poistu asettamisen jälkeen ja lataa sitten kokoonpano uudelleen.
[root@tty01 ~]# gitlab-ctl reconfigure #重新配置 GitLab 服务
Kirjaudu sisään web-sivulle ja kirjaudu sisään satunnaisena käyttäjänä. Käytimme aiemmin käyttämäämme satunnaista sähköpostimuotoa. Nyt testaamme sähköpostiasetuksiamme.
Kun olet tehnyt muutokset ja napsauttanut Tallenna, näyttöön tulee ponnahdusikkuna. Siirry sähköpostiisi ja napsauta Vahvista vahvistusta varten.
Kun tulen postilaatikkoon, näen, että lähettäjä on qq-postilaatikko, jonka täytin asetuksiin, ja vahvistus lähetetään käyttäjän muutettuun postilaatikkoon.
Napsauttamalla Vahvista siirryt uudelle sivulle, jossa näet, että käyttäjä on vaihtanut sähköpostiosoitteensa onnistuneesti.