Teknologian jakaminen

Jihu Gitlabin käyttö (2)

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Sisällysluettelo

1. Gitlab-komentorivi järjestelmänvalvojan salasanan vaihtamiseksi

2. Gitlab-palvelun hallinta

3. Yrityksen kehityskoodin toimitusprosessi

4. Gitlabin varmuuskopiointi ja palautus

datan varmuuskopio

Testaa tietojen palautusta

5. Sähköpostiasetukset


 

1. Gitlab-komentorivi järjestelmänvalvojan salasanan vaihtamiseksi

  1. [root@tty01 ~]# gitlab-rails console -e production # 启动GitLab的Rails控制台
  2. --------------------------------------------------------------------------------
  3. Ruby: ruby 3.1.4p223 (2023-03-30 revision 957bb7cb81) [x86_64-linux]
  4. GitLab: 16.11.5-jh (3a067aedcc3) EE
  5. GitLab Shell: 14.35.0
  6. PostgreSQL: 14.11
  7. ------------------------------------------------------------[ booted in 50.69s ]
  8. Loading production environment (Rails 7.0.8.1)
  9. irb(main):001:0> user = User.where(id: 1).first # id为1的是超级管理员
  10. => #<User id:1 @root>
  11. irb(main):002:0> user.password = 'Qq111111' # 密码必须至少8个字符
  12. => "Qq111111"
  13. irb(main):003:0> user.save! # 如没有问题 返回true
  14. => true
  15. irb(main):004:0> exit # 退出

2. Gitlab-palvelun hallinta

  1. gitlab-ctl start # 启动所有 gitlab 组件;
  2. gitlab-ctl stop # 停止所有 gitlab 组件;
  3. gitlab-ctl restart # 重启所有 gitlab 组件;
  4. gitlab-ctl status # 查看服务状态;
  5. gitlab-ctl reconfigure # 启动服务;
  6. vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
  7. gitlab-ctl tail # 查看日志;

3. Yrityksen kehityskoodin toimitusprosessi

  • Projektipäälliköt (PM) luovat tehtäviä GitLabissa ja osoittavat ne kehittäjille

    • PM käyttää GitLabin Issue-funktiota tehtävän luomiseen ja tehtävän yksityiskohtaisen kuvauksen ja vaatimusten määrittämiseen.
    • Määritä tehtäviä tietyille kehittäjille, aseta prioriteetit ja määräajat.
  • Kun kehittäjä on saanut tehtävän, hän käyttää git-kloonia paikallisesti vetääkseen koodikirjaston

    • Kehittäjä suorittaa komennon paikallisessa terminaalissa:
      git clone <仓库地址>
    • Kloonaa koodikanta paikalliseen kehitysympäristöösi.
  • Kehittäjät luovat kehityshaaroja ja kehittävät

    • Luo uusi kehityshaara paikallisesti, esim.dev
      git checkout -b dev
    • olla olemassadevHaaralla tehdään koodikehitystä ja -muokkauksia.
  • Kun kehittäjä on valmis kehittämään, hän toimittaa sen paikalliseen varastoon

    • Lähetä koodimuutokset paikallisesti:
      git add . git commit -m "完成任务描述"
  • Kehittäjät hakevat haaran yhdistämispyyntöä (Merge request) GitLab-käyttöliittymässä

    • Työnnä paikallinen haara etävarastoon:
      git push origin dev
    • Kirjaudu GitLabiin, luo uusi yhdistämispyyntö projektin yhdistämispyynnöt-sivulla ja valitse yhdistettävä lähdehaara ja kohdehaara (yleensämastertaimain)。
  • PM tarkistaa lähetykset ja koodimuutokset GitLabissa Kun olet varmistanut, että ne ovat oikein, vahvista, että kehittäjän haara yhdistetään päähaaraan.

    • Pääministeri tarkistaa GitLabin yhdistämispyynnöt, mukaan lukien koodimuutokset ja lähetystietueet.
    • Jos kaikki menee hyvin, pääministeri hyväksyy yhdistämispyynnön ja tekee sendevHaara yhdistyimasterhaara.
  • Kehittäjä vahvistaa, että Mark on suorittanut kehityksen GitLabissa, ja sulkee ongelman.

    • Kehittäjät voivat lisätä kuvauksen lähettäessään yhdistämispyynnönclose #1(sisään#1on ongelman numero), joten kun yhdistämispyyntö yhdistetään, siihen liittyvä ongelma suljetaan automaattisesti.
    • Jos kuvaukseen ei ole lisätty ohjetta ongelman sulkemiseen, kehittäjä voi sulkea ongelman manuaalisesti Ongelma-sivulla.

 

4. Gitlabin varmuuskopiointi ja palautus

Tarkista järjestelmäversio ja ohjelmistoversio

  1. [root@tty01 ~]# cat /etc/redhat-release
  2. Rocky Linux release 9.4 (Blue Onyx)
  3. [root@tty01 ~]# cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
  4. 16.11.5-jh
datan varmuuskopio

Avaa /etc/gitlab/gitlab.rb-määritystiedosto ja tarkastele varmuuskopiointiin liittyvää asetuskohdetta:

 

  1. [root@tty01 ~]# vim /etc/gitlab/gitlab.rb #启用下述两个配置项
  2. gitlab_rails['manage_backup_path'] = true #指定GitLab是否应该自动管理备份路径
  3. 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.

  1. [root@tty01 ~]# gitlab-ctl reconfigure
  2. [root@tty01 ~]# gitlab-ctl restart

Suorita varmuuskopiointikomento

[root@tty01 ~]# gitlab-rake gitlab:backup:create

Komennon suorittamisen jälkeen näyttöön tulee varoitusviesti:gitlab.rbjagitlab-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

  1. [root@tty01 ~]# ls /var/opt/gitlab/backups/
  2. 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.

  1. [root@tty01 ~]# vim /etc/gitlab/gitlab.rb # 启用下述两个配置项
  2. 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.

Testaa tietojen palautusta

Kirjaudu sisään järjestelmänvalvojana ja poista kirjaston kohteet

 

Sinun on lopetettava datayhteyspalvelu ennen kuin palautat:

  1. [root@tty01 ~]# gitlab-ctl stop unicorn
  2. [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.

  1. [root@tty01 ~]# cd /var/opt/gitlab/backups/ #进入数据备份目录
  2. [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.

  1. [root@tty01 backups]# gitlab-ctl restart
  2. [root@tty01 backups]# gitlab-ctl start unicorn
  3. [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.

 

 

5. Sähköpostiasetukset

Muuta se sähköpostiosoitteeksi, sähköpostipalvelun tarjoajaksi, valtuutuskoodiksi, portiksi ja muihin tietoihin.

  1. [root@tty01 ~]# vim /etc/gitlab/gitlab.rb #找到并替换邮箱配置,更改你的邮箱进行测试
  2. gitlab_rails['smtp_enable'] = true
  3. gitlab_rails['smtp_address'] = "smtp.163.com"
  4. gitlab_rails['smtp_port'] = 465
  5. gitlab_rails['smtp_user_name'] = "[email protected]"
  6. gitlab_rails['smtp_password'] = "UWYNCPQOBQFCDLIW"
  7. gitlab_rails['smtp_domain'] = "smtp.163.com"
  8. gitlab_rails['smtp_authentication'] = "login"
  9. gitlab_rails['smtp_enable_starttls_auto'] = false
  10. gitlab_rails['smtp_tls'] = true
  11. gitlab_rails['smtp_pool'] = false
  12. 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.