私の連絡先情報
郵便メール:
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
目次
1. 管理者パスワードを変更するための 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 clone を使用してコード ライブラリをプルします。:
git clone <仓库地址>
開発者は開発ブランチを作成し、:
dev
: git checkout -b dev
dev
コードの開発と変更はブランチ上で実行されます。開発者は開発が完了すると、それを地元の倉庫に提出します。:
git add . git commit -m "完成任务描述"
開発者はGitLabインターフェース上でブランチマージリクエスト(マージリクエスト)を申請します。:
git push origin dev
master
またはmain
)。PM は GitLab 上で提出とコードの修正をチェックし、それらが正しいことを確認した後、開発者のブランチがメイン ブランチにマージされることを確認します。:
dev
ブランチが統合されましたmaster
支店。開発者は、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
バックアップが毎日実行されないようにバックアップ保持時間を設定します。ディレクトリがいっぱいになる危険性があります。/etc/gitlab/gitlab.rb 構成ファイルを開き、次の構成を見つけます。
- [root@tty01 ~]# vim /etc/gitlab/gitlab.rb # 启用下述两个配置项
- gitlab_rails['backup_keep_time'] = 604800 # 设置备份文件过期时间,604800秒等于7天
設定された時間は秒単位です。増減したい場合は、ここで直接設定し、gitlab-ctl restart を通じてサービスを再起動して有効にします。
バックアップが完了すると、今日の日付を含む tar パッケージがバックアップ ディレクトリに生成されます。
管理ユーザーとしてログインし、ライブラリ項目を削除します
復元する前に、データ接続サービスを停止する必要があります。
- [root@tty01 ~]# gitlab-ctl stop unicorn
- [root@tty01 ~]# gitlab-ctl stop sidekiq
Taishin が構築したホストの場合、理論的には、これら 2 つのサービスを停止しても問題ありません。これら 2 つのサービスを停止するのは、データの整合性を確保するためです。通常、古いサーバーの /data/gitlab/backups ディレクトリにあるバックアップ ファイルは、復元のために新しいサーバーの /data/gitlab/backups にコピーされます。ここでは、実験環境がこのマシンに復元されます。
アクセス許可に注意してください: 600 のアクセス許可は復元できません。 実験環境は 777 に変更できます。実稼働環境では、所有者とグループを変更することをお勧めします。
コマンド実行後、しばらく待ってから「yes」を2回入力するとリカバリが完了します。
- [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が自動的に追加されるため、ファイル名の後の部分はここに記述できません。
回復が完了したら、すべてのサービスを再起動することも、以前に終了した 2 つのデータ接続サービスだけを開始することもできます。
- [root@tty01 backups]# gitlab-ctl restart
- 或
- [root@tty01 backups]# gitlab-ctl start unicorn
- [root@tty01 backups]# gitlab-ctl start sidekiq
注: バックアップ ファイルを使用して gitlab を復元するには、2 つのホストの gitlab バージョンが一貫していることを確認する必要があります。そうでない場合は、バージョンが一致しないことを示すメッセージが表示されます。
削除されたデータを表示するには、更新するか再度ログインしてください。
メールアドレス、メールプロバイダー、認証コード、ポートなどに変更してください。
- [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]'
設定後、保存して終了し、設定を再読み込みします。
[root@tty01 ~]# gitlab-ctl reconfigure #重新配置 GitLab 服务
Web ページにログインし、ランダム ユーザーとしてログインします。ここでは、以前に使用したランダムな電子メール形式を実際の電子メール形式に変更して、電子メール設定をテストします。
変更を加えて「保存」をクリックすると、ポップアップが表示されます。電子メールにアクセスして「確認」をクリックして確認する必要があります。
メールボックスにアクセスすると、送信者が設定に入力した qq メールボックスであることがわかり、ユーザーの変更されたメールボックスに検証が送信されます。
[確認] をクリックすると新しいページにジャンプし、ユーザーが電子メール アドレスを正常に変更したことがわかります。