Ubuntu19.1でのGitLabのインストール、構成、およびアンインストール

記事ディレクトリ

I.概要##

gitlabは、オープンソースでホストされるGitリポジトリです。

git関連の概念:
gitはバージョン制御システム、コマンド、ツールです
gitlibは、git関数を実装するために使用される開発ライブラリです。
Githubは、インターネットに公開されているWebサイトインターフェイスを含む、gitに基づくオンラインコードホスティングウェアハウスです。
Gitlabは、gitに基づくソフトウェアをホストするオンラインコードウェアハウスです。通常、企業のイントラネット上にgitプライベートサーバーを構築するために使用されます。
注:gitlab-ceコミュニティエディション; gitlab-eeはエンタープライズエディションであり、有料です

次に、環境を構築します##

1、 仮想マシン構成###

gitlabはより多くのリソースを消費するため、仮想マシンの構成が少なくとも次のようになっていることを確認する必要があります。

また、インストール後にブラウザなどの他のアプリケーションを開かないでください。開かないと、次のようになります。

ご覧のとおり、CPUとRAMはすべてウイルスに感染しました。

私の精神は崩壊した。

2、 ファイアウォールをオンにします###

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

3、 依存関係をインストールする###

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

3、GitLabをインストールします##

公式のダウンロードアドレスが遅すぎるため、ここでソースを変更します。

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ユーザーのパスワードです。設定後は通常どおり使用できます。

第4に、GitLab ##を構成します

1、 ドメインアドレスを構成する###

1、 vim / etc / gitlab / gitlab.rbと入力してファイルを開き、 external_url = 'http:// git.example.com'を独自のIPまたはHostNameに変更します(例:

external_url ='http://192.168.2.105'


以下は高度な操作ですので、無視してください

2、 接尾辞###を構成します

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

3、 SMTPサービスを構成します###

これが面倒だと思われる場合は、設定する必要はありません。操作には影響しませんが、メールメッセージを受信できません。また、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

5、GitLabをアンインストールします##

取り付け後、後悔しており、取り付けが完了すると起動後に自動的に起動するため、カードを移動できません。優れた仮想マシンはどうなりましたか?

だから私は自分のUbuntuの若くて美しい画像を返し、嫌なgitlabをアンインストールすると思いました:

アンインストールする前に、インストール場所を確認しましょう。 aptコマンドでインストールしたため、 / optディレクトリにインストールされます。次のように表示されます。

この子供がここにいて、彼は死んでいたことがわかりました。

私たちの絶滅計画の次の実行:

1、 ###の実行を停止します

sudo gitlab-ctl stop

2、 アンインストールコマンド###を実行します

次のコマンドを実行して、システムを再起動します

この部分に注意してください。それが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しかなかったことがわかりました。

3、 gitlabプロセスを表示###

ps -ef|grep gitlab

最初のプロセスを強制終了します。

kill -98922

それからそれは見た後に消えました。

4、 gitlabファイルを削除します###

//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/

6、問題が発生しました##

1、 gitlabインストールエラー###

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

2、 502 ###を開始します

私はそれを取りました。それは良かったのですが、突然、不可解に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

Ubuntu19.1でのGitLabのインストール、構成、およびアンインストール
Ubuntu16.04でのCUDAのインストールとアンインストール
Ubuntu環境でのNginxのインストールと展開
CentOS7システムでのJDKのインストールと構成
VMwareWorkstationでのCentOS7のインストールと構成
Ubuntu環境でのSSHのインストールと使用
Ubuntu16.04のインストールと簡単な構成
UbuntuPostgreSQLのインストールと構成
UbuntuでのPythonでのGDALのインストールと使用
ubuntu環境でのMySQLのインストールと簡単な実践(1)
Centos7のインストールとJenkinsの構成
ubuntuでのJenkinsのハッピーインストール
CentOS7のインストールとGitlabのメンテナンス
Ubuntuでのgitlabのインストール手順
Ubuntu19.1のインストールと構成中国の環境
Ubuntuインストール後の構成と美化(1)
Nginxのインストールと構成のロード(ubuntu12.04)
Ubuntu構成ソースとインストールソフトウェア
ubuntuDockerのインストールとRancherの展開
centos7でのredisのインストールと構成
Centos7のインストールとgitlabサーバーの展開
Win10サブシステムUbuntuのインストールと使用
Ubuntu12.04でのDLNA / UPnPサーバーのインストールと構成
UbuntuでのSubversion(SVN)のクイックインストールと構成の詳細な説明
Ubuntu環境でのSSHのインストールと使用の詳細な説明
DebianおよびUbuntuのインストールソース構成ファイルの説明
OpenMPI-Ubuntuのインストールと構成
Ubuntu12.04でのpulseaudioとAPIの使用法のインストール
Ubuntuの紹介とインストール
CentOS6.5でのrsyncサーバーのインストールと構成
UbuntuでのKaldiのインストールと構成のグラフィックチュートリアル
ubuntu18.04インストール後の基本構成と一般的なソフトウェアのインストール
Ubuntuでの静的DNS構成方法の詳細な説明
Ubuntu16.04は、VMwareでの完全なインストールと構成のチュートリアルをミラーリングします
Ubuntuシステムのインストールと構成に関する一般的な例外と解決策
ubuntuでのrz / szコマンドのインストールと使用方法
Centosmysqlのインストールと構成
Centos7のインストールと構成のプロメテウス
UbuntuでのAnacondaの使用
CentOS7のインストールと構成PPTP
CentOSのインストールと構成cmake
Centos7.5のインストールと構成MongoDB4.0.4
CentOS7のインストールと構成PPTP
ubuntuはGitLabをインストールして構成します
GitLabのインストールと基本的な使用
Ubuntu16.04のインストールとSVNの構成
エンタープライズの自作GitLabコードウェアハウスのインストールと基本的な構成の使用
centOS7でのSparkのインストールと構成のチュートリアルの詳細な説明
Ubuntu環境変数とADB構成
Centos6.5のインストールとKVMの展開
Centos7hadoopクラスターのインストールと構成
UbuntuにDockerをインストールして構成する
Ubuntu16.04構成OpenCV3.4.2と基本的な使用法
ubuntuおよびwindowsでのRedisのインストール
CentOSでのJava-JDKのインストールと構成
CentOS 7Tomcatサービスのインストールと構成
CentOSNTPサーバーのインストールと構成
UbuntuでのDockerCEのインストール
Ubuntu18.04インストールAnaconda3およびVSCodeガイド
Ubuntu16.04でのCUDA8.0とCUDA9.0の共存
Centos7mysqlデータベースのインストールと構成