I.概要
次に、環境を構築します
1、 仮想マシン構成
2、 ファイアウォールをオンにします
3、 依存関係をインストールする
3、GitLabをインストールします
第4に、GitLabを構成します
1、 ドメインアドレスを構成する
2、 接尾辞を構成する
3、 SMTPサービスを構成する
5、GitLabをアンインストールします
1、 実行を停止します
2、 アンインストールコマンドを実行します
3、 gitlabプロセスを表示する
4、 gitlabファイルを削除する
6.発生した問題
1、 gitlabインストールエラー
2、 502を開始
gitlabは、オープンソースでホストされるGitリポジトリです。
git関連の概念:
gitはバージョン制御システム、コマンド、ツールです
gitlibは、git関数を実装するために使用される開発ライブラリです。
Githubは、インターネットに公開されているWebサイトインターフェイスを含む、gitに基づくオンラインコードホスティングウェアハウスです。
Gitlabは、gitに基づくソフトウェアをホストするオンラインコードウェアハウスです。通常、企業のイントラネット上にgitプライベートサーバーを構築するために使用されます。
注:gitlab-ceコミュニティエディション; gitlab-eeはエンタープライズエディションであり、有料です
gitlabはより多くのリソースを消費するため、仮想マシンの構成が少なくとも次のようになっていることを確認する必要があります。
また、インストール後にブラウザなどの他のアプリケーションを開かないでください。開かないと、次のようになります。
ご覧のとおり、CPUとRAMはすべてウイルスに感染しました。
私の精神は崩壊した。
LInuxの元のファイアウォールツールiptablesは煩雑すぎるため、ubuntuはデフォルトでiptableに基づくファイアウォールツール
ufw
を提供します。
sudo ufw enable|disable
ファイアウォールのステータスを表示します。
sudo ufw status
次に、ポートを開いたり閉じたりします。
//すべての外部IPがマシンの25にアクセスできるようにします/tcp (smtp)港
sudo ufw allow smtp
//smtpサービスへの外部アクセスを禁止する
sudo ufw deny smtp
//上で確立されたルールを削除します
sudo ufw delete allow smtp
今回のgitlabのインストールでは、これら3つを保証するだけで済みます。次の順序で実行してください。
sudo ufw allow http
sudo ufw allow https
sudo ufw allow OpenSSH
GitLabを自分でインストールする前に、インストールプロセス中に引き続き使用するソフトウェアをインストールすることが非常に重要です。必要なすべてのソフトウェアは、Ubuntuのデフォルトのパッケージリポジトリから簡単にインストールできます。
個別に入力してください:
//ローカルパッケージインデックスを更新します
sudo apt update
//依存関係をインストールする
sudo apt install ca-certificates curl openssh-server postfix
インストール時に次の問題が発生した場合:
ソースを変更するには、私のこの記事を参照してください:[ソースの変更](https://blog.csdn.net/weixin_43941364/article/details/104538867)、戻って、終了後に次の操作を続行します。
メールを設定できる場合があります。
//これを設定します,さりげなくセットアップ,後で変更できます。Enterを選択してスキップできます
[email protected]
HTTPポートとSSHポートを開きます。
iptables -I INPUT -m tcp -p tcp --dport 22-j ACCEPT
iptables -I INPUT -m tcp -p tcp --dport 80-j ACCEPT
//権限が拒否されましたというプロンプトが表示された場合は、権限が不十分であることを意味します,解決策は、前にsudoを追加することです//または管理者に切り替えます: sudo su
apt-get--purge remove postfix
公式のダウンロードアドレスが遅すぎるため、ここでソースを変更します。
1、 最初にGitLabのGPG公開鍵を信頼します。
curl https://packages.gitlab.com/gpg.key 2>/dev/null| sudo apt-key add -&>/dev/null
2、 次に、rootアカウントを使用してviを開きます。
sudo su
vi /etc/apt/sources.list.d/gitlab-ce.list
3、 以下の内容を貼り付けてください
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu xenial main
//テキストに貼り付け、Escキーを押して、次のように入力します:、最後にwqと入力して、保存して終了します。
4、 gitlab-ceをインストールします。
sudo apt-get update
sudo apt-get install gitlab-ce
5、 sshdおよびpostfixサービスを開く
service sshd start
service postfix start
6、 インストールが完了したら、gitlabを起動します
最初の起動は比較的長くなります。コンピューターの構成が低いと、犬になります。
補足:コンピューターの構成によっては、時間は非常に無敵です。
sudo gitlab-ctl reconfigure
7、 ブラウザで開きます:http://127.0.0.1。
ただし、仮想マシンでこれを行うことはお勧めしません。最初に仮想マシンのIPアドレスを取得してから、自分のコンピューターでアクセスすることをお勧めします。たとえば、私のIPアドレスは192.168.2.105であり、次のようにアクセスできます。
http://192.168.2.105
IPアドレスを取得する方法:
ifconfig
//ネットがない場合-tools,彼の指示に従ってインストールしてください.//このコマンドのようです
apt install net-tools
初めて使用する場合、GitLabはパスワードの設定を求めるプロンプトを表示します。デフォルトの設定はrootユーザーのパスワードです。設定後は通常どおり使用できます。
1、 vim / etc / gitlab / gitlab.rb
と入力してファイルを開き、 external_url = 'http:// git.example.com'
を独自のIPまたはHostNameに変更します(例:
external_url ='http://192.168.2.105'
以下は高度な操作ですので、無視してください
GitLabの送信メールボックスを構成するには、次のコマンドを使用して、電子メールの公開と送信をテストします。
次のコマンドを実行して、メールの送信をテストします。
sudo apt-get install mailutils
echo "Test mail from postfix" [email protected]
メールの受信には時間がかかりますので、まずは他のことをお勧めします。
それから彼はしばらくすると不可解にヒントを得るでしょう:
当時は怖かったのですが、とても興味深かったので、入って見てみました。
vim /var/mail/root
開封後:
電子メールアドレスを送信するシステムを書き留めます。
私はこれです:
" MAILER-DAEMON@wsuo"@ubuntu-gitlab.com
次に、 vim / etc / gitlab / gitlab.rb
ファイルを開き、 gitlab_rails ['gitlab_email_from'] = 'gitlab @ example.com'
を電子メールアドレスを送信するシステムに変更します。
gitlab_rails['gitlab_email_from']='"MAILER-DAEMON@wsuo"@ubuntu-gitlab.com'
上記の構成が完了したら、GitLabを起動できます。
sudo gitlab-ctl reconfigure
これが面倒だと思われる場合は、設定する必要はありません。操作には影響しませんが、メールメッセージを受信できません。また、Tencentのメールシステムを使用することもできます。
GitLabメールサービス構成(gitlab.rbファイル)を変更し、Tencent Enterprise MailboxのSMTPサーバーを使用して、アカウントとパスワードを入力します
gitlab_rails['smtp_address']="smtp.exmail.qq.com"
gitlab_rails['smtp_port']=25
gitlab_rails['smtp_user_name']="xxx"
gitlab_rails['smtp_password']="xxx"
gitlab_rails['smtp_domain']="smtp.qq.com"
gitlab_rails['smtp_authentication']='plain'
gitlab_rails['smtp_enable_starttls_auto']=true
構成を効果的にします。
gitlab-ctl reconfigure
gitlab-rake cache:clear RAILS_ENV=production #キャッシュの消去
一般的なコマンドを添付します。
//バージョン情報を表示する
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
//12.8.1
取り付け後、後悔しており、取り付けが完了すると起動後に自動的に起動するため、カードを移動できません。優れた仮想マシンはどうなりましたか?
だから私は自分のUbuntuの若くて美しい画像を返し、嫌なgitlabをアンインストールすると思いました:
アンインストールする前に、インストール場所を確認しましょう。 apt
コマンドでインストールしたため、 / opt
ディレクトリにインストールされます。次のように表示されます。
この子供がここにいて、彼は死んでいたことがわかりました。
私たちの絶滅計画の次の実行:
sudo gitlab-ctl stop
次のコマンドを実行して、システムを再起動します
この部分に注意してください。それがgitlab-ceバージョンかgitlab-eeバージョンかを確認してください。間違えないでください。
//Synapticを使用してインストールしたため、コマンドを直接実行します
sudo apt-get remove gitlab-ceはこのコマンドと同等です: sudo apt-get--purge remove gitlab-ce
//このコマンドを実行するだけです,このソフトウェアをコンピューターにアンインストールします,もっと徹底的に削除したい場合,次のコマンドを引き続き実行できます
# 段階的なソフトウェアインストールパッケージを削除します
sudo apt-get clean gitlab-ce
削除プロセス中に、「y」を1回入力するように求められます。
実行後、調べてみると、元のファイルには2Mしかなかったことがわかりました。
ps -ef|grep gitlab
最初のプロセスを強制終了します。
kill -98922
それからそれは見た後に消えました。
//gitlabを含むすべてのファイルとディレクトリを削除します
find /-name gitlab|xargs rm -rf
gitlab-ctluninstall
を削除するときに root
の下に自動的にバックアップされる構成ファイル:
cd /root
rm -rf /root/その後、gitlabはタブで自動的に完了します
たとえば、私のものは次のとおりです。
root@ubuntu:~# rm -rf gitlab-cleanse-2020-02-29T08\:43/
sudo apt-get install gitlab-ce
を実行すると、エラーが報告されます。
テキスト情報は次のとおりです。
There was an error running gitlab-ctl reconfigure:
gitlab_sysctl[kernel.shmmax](postgresql::enable line 67) had an error: Mixlib::ShellOut::ShellCommandFailed: execute[load sysctl conf kernel.shmmax](/opt/gitlab/embedded/cookbooks/cache/cookbooks/package/resources/gitlab_sysctl.rb line 46) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with[0], but received '255'---- Begin output of sysctl -e --system ----
STDOUT:* Applying /etc/sysctl.d/10-console-messages.conf ...
kernel.printk =4417* Applying /etc/sysctl.d/10-ipv6-privacy.conf ...
net.ipv6.conf.all.use_tempaddr =2
net.ipv6.conf.default.use_tempaddr =2* Applying /etc/sysctl.d/10-kernel-hardening.conf ...
kernel.kptr_restrict =1* Applying /etc/sysctl.d/10-link-restrictions.conf ...
fs.protected_hardlinks =1
fs.protected_symlinks =1* Applying /etc/sysctl.d/10-magic-sysrq.conf ...
kernel.sysrq =176* Applying /etc/sysctl.d/10-network-security.conf ...
net.ipv4.conf.default.rp_filter =2
net.ipv4.conf.all.rp_filter =2* Applying /etc/sysctl.d/10-ptrace.conf ...
kernel.yama.ptrace_scope =1* Applying /etc/sysctl.d/10-zeropage.conf ...
vm.mmap_min_addr =65536* Applying /usr/lib/sysctl.d/30-tracker.conf ...
fs.inotify.max_user_watches =65536* Applying /usr/lib/sysctl.d/50-default.conf ...
net.ipv4.conf.all.promote_secondaries =1
net.core.default_qdisc = fq_codel
* Applying /etc/sysctl.d/90-omnibus-gitlab-kernel.sem.conf ...* Applying /etc/sysctl.d/90-omnibus-gitlab-kernel.shmall.conf ...* Applying /etc/sysctl.d/90-omnibus-gitlab-kernel.shmmax.conf ...
kernel.shmmax =17179869184* Applying /etc/sysctl.d/90-omnibus-gitlab-net.core.somaxconn.conf ...* Applying /etc/sysctl.d/99-sysctl.conf ...* Applying /etc/sysctl.d/protect-links.conf ...
fs.protected_hardlinks =1
fs.protected_symlinks =1* Applying /etc/sysctl.conf ...
STDERR: sysctl: cannot open "/etc/sysctl.d/90-omnibus-gitlab-kernel.sem.conf":そのようなファイル、又はディレクトリはありません
sysctl: cannot open "/etc/sysctl.d/90-omnibus-gitlab-kernel.shmall.conf":そのようなファイル、又はディレクトリはありません
sysctl: cannot open "/etc/sysctl.d/90-omnibus-gitlab-net.core.somaxconn.conf":そのようなファイル、又はディレクトリはありません
- - - - End output of sysctl -e --system ----
Ran sysctl -e --system returned 255
真っ赤で怖かったです。
解決策を見つけるには、GitLabフォーラムにアクセスしてください。
touch /opt/gitlab/embedded/etc/90-omnibus-gitlab-kernel.sem.conf
touch /opt/gitlab/embedded/etc/90-omnibus-gitlab-net.core.somaxconn.conf
私はそれを取りました。それは良かったのですが、突然、不可解に502になりました。タイムアウトの問題だと思います。構成ファイルに移動して見つけて、より長い時間設定してください。
1、 ファイルを開く:
vim /etc/gitlab/gitlab.rb
2、 時間を変更する
次の2つの場所を見つけます。
gitlab_rails[‘webhook_timeout’] = 90
gitlab_rails[‘git_timeout’]=90
3、 構成ファイルを更新する
sudo gitlab-ctl reconfigure
それでもできない場合は、上記のファイルの変更が完了しました。
ポートを変更してみてください:
unicorn['port']=8888
gitlab_workhorse['auth_backend']="http://localhost:8888"
注:ユニコーン['port']gitlabを使用_workhorse['auth_backend']同じでなければなりません
それでもできない場合は、戻って5番目のステップ(アンインストール-再インストール)を実行してください。
Recommended Posts