τα στοιχεία επικοινωνίας μου
Ταχυδρομείοmesophia@protonmail.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Πίνακας περιεχομένων
1. Γραμμή εντολών Gitlab για αλλαγή του κωδικού πρόσβασης διαχειριστή
2. Διαχείριση υπηρεσιών Gitlab
3. Διαδικασία υποβολής κώδικα ανάπτυξης της εταιρείας
4. Δημιουργία αντιγράφων ασφαλείας και ανάκτηση Gitlab
- [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 # 查看日志;
Οι διαχειριστές έργου (PM) δημιουργούν εργασίες στο GitLab και τις αναθέτουν σε προγραμματιστές:
Αφού ο προγραμματιστής λάβει την εργασία, χρησιμοποιεί τον κλώνο git τοπικά για να τραβήξει τη βιβλιοθήκη κωδικών:
git clone <仓库地址>
Οι προγραμματιστές δημιουργούν κλάδους ανάπτυξης και αναπτύσσονται:
dev
: git checkout -b dev
dev
Η ανάπτυξη κώδικα και οι τροποποιήσεις πραγματοποιούνται στο υποκατάστημα.Αφού ο προγραμματιστής ολοκληρώσει την ανάπτυξη, την υποβάλλει στην τοπική αποθήκη:
git add . git commit -m "完成任务描述"
Οι προγραμματιστές κάνουν αίτηση για αίτημα συγχώνευσης υποκαταστημάτων (Αίτημα συγχώνευσης) στη διεπαφή GitLab:
git push origin dev
master
ήmain
)。Το PM ελέγχει τις υποβολές και τις τροποποιήσεις κώδικα στο GitLab Αφού επιβεβαιώσει ότι είναι σωστές, επιβεβαιώστε ότι ο κλάδος του προγραμματιστή θα συγχωνευθεί στον κύριο κλάδο.:
dev
Υποκατάστημα συγχωνεύθηκε σεmaster
κλαδί.Ο προγραμματιστής επιβεβαιώνει ότι η ανάπτυξη ολοκληρώθηκε από το Mark που έγινε στο GitLab και κλείνει το ζήτημα.:
close #1
(σε#1
είναι ο αριθμός Έκδοσης), έτσι ώστε όταν το Αίτημα Συγχώνευσης συγχωνευθεί, το σχετικό Θέμα θα κλείσει αυτόματα.
Ελέγξτε την έκδοση συστήματος και την έκδοση λογισμικού
- [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
Ανοίξτε το αρχείο διαμόρφωσης /etc/gitlab/gitlab.rb και προβάλετε ένα στοιχείο διαμόρφωσης που σχετίζεται με τη δημιουργία αντιγράφων ασφαλείας:
- [root@tty01 ~]# vim /etc/gitlab/gitlab.rb #启用下述两个配置项
- gitlab_rails['manage_backup_path'] = true #指定GitLab是否应该自动管理备份路径
- gitlab_rails['backup_path'] = "/var/opt/gitlab/backups" #指定GitLab备份文件的存储路径
Αυτό το στοιχείο καθορίζει τη διαδρομή του προεπιλεγμένου αρχείου αντιγράφων ασφαλείας Μπορείτε να τροποποιήσετε τη διαμόρφωση και να εκτελέσετε gitlab-ctl επαναδιαμόρφωση ή επανεκκίνηση του gitlab-ctl Επανεκκινήστε την υπηρεσία για να τεθεί σε ισχύ.
- [root@tty01 ~]# gitlab-ctl reconfigure
- 或
- [root@tty01 ~]# gitlab-ctl restart
Εκτελέστε την εντολή δημιουργίας αντιγράφων ασφαλείας σε αντίγραφο ασφαλείας
[root@tty01 ~]# gitlab-rake gitlab:backup:create
Μετά την εκτέλεση της εντολής, εμφανίζεται ένα προειδοποιητικό μήνυμα:gitlab.rb
καιgitlab-secrets.json
Το αρχείο περιέχει ευαίσθητα δεδομένα και δεν περιλαμβάνεται σε αυτό το αντίγραφο ασφαλείας. Κατά την επαναφορά ενός αντιγράφου ασφαλείας, αυτά τα αρχεία πρέπει να δημιουργηθούν μη αυτόματα.
Φυσικά, αυτά μπορούν να γίνουν και σε συνδυασμό με προγραμματισμένες εργασίες.
Ελέγξτε εάν τα αρχεία στον κατάλογο αντιγράφων ασφαλείας υπάρχουν κανονικά
- [root@tty01 ~]# ls /var/opt/gitlab/backups/
- 1720624341_2024_07_10_16.11.5-jh_gitlab_backup.tar
Ρυθμίστε το χρόνο διατήρησης αντιγράφων ασφαλείας για να αποτρέψετε τη δημιουργία αντιγράφων ασφαλείας κάθε μέρα. Υπάρχει σίγουρα ο κίνδυνος να είναι γεμάτος ο κατάλογος.
- [root@tty01 ~]# vim /etc/gitlab/gitlab.rb # 启用下述两个配置项
- gitlab_rails['backup_keep_time'] = 604800 # 设置备份文件过期时间,604800秒等于7天
Ο ρυθμισμένος χρόνος είναι σε δευτερόλεπτα Εάν θέλετε να τον αυξήσετε ή να τον μειώσετε, μπορείτε να τον ρυθμίσετε απευθείας εδώ και να επανεκκινήσετε την υπηρεσία μέσω της επανεκκίνησης του gitlab-ctl.
Όταν ολοκληρωθεί η δημιουργία αντιγράφων ασφαλείας, ένα πακέτο tar με τη σημερινή ημερομηνία θα δημιουργηθεί στον κατάλογο αντιγράφων ασφαλείας.
Συνδεθείτε ως διαχειριστής και διαγράψτε στοιχεία της βιβλιοθήκης
Πρέπει να διακόψετε την υπηρεσία σύνδεσης δεδομένων πριν από την επαναφορά:
- [root@tty01 ~]# gitlab-ctl stop unicorn
- [root@tty01 ~]# gitlab-ctl stop sidekiq
Εάν πρόκειται για έναν κεντρικό υπολογιστή που έχει δημιουργηθεί από την Taishin, γενικά δεν χρειάζεται να σταματήσετε τη λειτουργία σύνδεσης δεδομένων Θεωρητικά, είναι εντάξει να σταματήσετε αυτές τις δύο υπηρεσίες. Η διακοπή αυτών των δύο υπηρεσιών είναι η διασφάλιση της συνέπειας των δεδομένων. Γενικά, τα αρχεία αντιγράφων ασφαλείας στον κατάλογο /data/gitlab/backups του παλιού διακομιστή αντιγράφονται στο /data/gitlab/backups στον νέο διακομιστή για ανάκτηση Εδώ, γίνεται επαναφορά του πειραματικού περιβάλλοντος σε αυτό το μηχάνημα.
Δικαιώματα σημείωσης: Δεν είναι δυνατή η επαναφορά 600 αδειών. Το πειραματικό περιβάλλον μπορεί να αλλάξει σε 777. Για το περιβάλλον παραγωγής, συνιστάται η τροποποίηση του ιδιοκτήτη και της ομάδας.
Αφού εκτελέσετε την εντολή, περιμένετε λίγο... και μετά πληκτρολογήστε ναι δύο φορές για να ολοκληρωθεί η ανάκτηση.
- [root@tty01 ~]# cd /var/opt/gitlab/backups/ #进入数据备份目录
- [root@tty01 backups]# gitlab-rake gitlab:backup:restore BACKUP=1720624341_2024_07_10_16.11.5-jh
Δώστε προσοχή στο όνομα του αρχείου μετά το BACKUP= εδώ Σε νεότερες εκδόσεις, το πλήρες όνομα δεν μπορεί να χρησιμοποιηθεί, το _gitlab_backup.tarh θα προστεθεί αυτόματα, επομένως το σημείο μετά το όνομα του αρχείου δεν μπορεί να γραφτεί εδώ.
Αφού ολοκληρωθεί η ανάκτηση, μπορείτε τώρα να επανεκκινήσετε όλες τις υπηρεσίες ή απλώς να ξεκινήσετε τις δύο υπηρεσίες σύνδεσης δεδομένων που είχαν κλείσει νωρίτερα.
- [root@tty01 backups]# gitlab-ctl restart
- 或
- [root@tty01 backups]# gitlab-ctl start unicorn
- [root@tty01 backups]# gitlab-ctl start sidekiq
Σημείωση: Η επαναφορά του gitlab μέσω αρχείων αντιγράφων ασφαλείας πρέπει να διασφαλίζει ότι οι εκδόσεις gitlab των δύο κεντρικών υπολογιστών είναι συνεπείς, διαφορετικά θα σας ζητηθεί να μην ταιριάζουν οι εκδόσεις.
Ανανεώστε ή συνδεθείτε ξανά για να δείτε τα διαγραμμένα δεδομένα.
Αλλάξτε το στη διεύθυνση email, τον πάροχο υπηρεσιών email, τον κωδικό εξουσιοδότησης, τη θύρα και άλλες πληροφορίες.
- [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'] = "newrain_wang@163.com"
- 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'] = 'newrain_wang@163.com'
Μετά τη ρύθμιση, αποθηκεύστε και πραγματοποιήστε έξοδο και, στη συνέχεια, φορτώστε ξανά τη διαμόρφωση.
[root@tty01 ~]# gitlab-ctl reconfigure #重新配置 GitLab 服务
Συνδεθείτε στην ιστοσελίδα και συνδεθείτε ως τυχαίος χρήστης Χρησιμοποιήσαμε την τυχαία μορφή email που χρησιμοποιούσαμε στο παρελθόν.
Αφού κάνετε τις αλλαγές και κάνετε κλικ στην Αποθήκευση, θα εμφανιστεί ένα αναδυόμενο παράθυρο. Πρέπει να μεταβείτε στο email σας και να κάνετε κλικ στην Επιβεβαίωση για επαλήθευση.
Όταν έρχομαι στο γραμματοκιβώτιο, μπορώ να δω ότι ο αποστολέας είναι ένα γραμματοκιβώτιο qq που συμπλήρωσα τη διαμόρφωση και αποστέλλεται μια επαλήθευση στο αλλαγμένο γραμματοκιβώτιο του χρήστη.
Κάνοντας κλικ στην Επαλήθευση θα μεταβείτε σε μια νέα σελίδα, όπου μπορείτε να δείτε ότι ο χρήστης άλλαξε με επιτυχία τη διεύθυνση email του.