VMware+centOS 8 で http プロトコルに基づく Git サービスを構築する方法

VMware+centOS 8 で http プロトコルに基づく Git サービスを構築する方法

1. 原因

必見

この記事の最終的な目標は、Android端末が仮想マシン内のgitサービスにアクセスできるようにすることです。そのため、httpプロトコルでgitサーバーを構築する必要があります。httpプロトコルでgitサーバーを構築する方法は、先人たちによって説明されています。著者はここで先人たちの研究を参考にしています。

2. 機器情報

Windows 10 Home 中国語版 (1903) VMware 15Pro (15.5.0 ビルド 14665864) CentOS 8 (1905 は GUI を閉じており、VMware は NAT モードを使用しています)

3. 準備

1. Windows ファイアウォールでポート 80 を開きます。コントロール パネル -> システムとセキュリティ -> Windows Defender ファイアウォール。詳細設定をクリック -> 受信の規則をクリック -> 新しい規則。作成する規則の種類をポートに変更します。図のように設定します。

ここに画像の説明を挿入

「接続を許可する」を選択し、指示に従って設定します

ここに画像の説明を挿入

名前設定: [送信規則] -> [新しい規則の作成] をクリックします。以降の手順は、上記の受信規則の設定と一致します。

2. SELinuxを無効にする

selinux設定ファイルを開く

vi /etc/selinux/config

SELinuxを永続的に無効にするには、SELINUX=disabledに変更してcentOSを再起動します。

注記:

1. SELinux には、Enforcing、Permissive、Disabled の 3 つの状態があります。2. 現在の状態を表示するコマンド: getenforcing 3. 一時シャットダウン コマンド: setenforce 0 4. 一時有効化: setenforce 1 (永続的なシャットダウン後に有効化することはできません)

(III) 仮想ネットワークエディタを変更します。VMwareメニューバーの「編集」→「仮想ネットワークエディタ」→「設定の変更」をクリックします。「VMnet8 NATモード」→「NAT設定」→「追加」をクリックします。図のように設定します(仮想マシンのIPアドレスはifconfigで照会し、説明は任意です)。

4. Apacheをインストールする

(I) httpdをインストールする

yum install httpd

(II) httpdサービスを起動する

systemctl start httpd.service

(III) ファイアウォール設定ファイルを変更し、ファイアウォールを再起動する

 ファイアウォールコマンド --zone=public --add-port=80/tcp --permanent systemctl で、firewalld.service を再起動します。

面倒な場合はファイアウォールをオフにしてください

注記:

1. ファイアウォールの状態を確認します: systemctl status firewalld 2. ファイアウォールを一時的にオフにします: systemctl stop firewalld 3. ファイアウォールを永続的にオフにします: systemctl enable firewalld 4. ファイアウォールを再起動します: systemctl enable firewalld (このコマンドはファイアウォールを永続的にオンにすることができます)

5. gitを設定する

1. 空の倉庫を作成する

mkdir -p /home/gitrepo/share.git //空のリポジトリは任意のディレクトリに設定できます cd /home/gitrepo/share.gitgit init --barechown -R apache:apache /home/gitrepo

(II) アカウントを作成し、権限を設定する

htpasswd -m -c /etc/httpd/conf.d/git-team.htpasswd XXX //XXX はアカウント名で、任意に設定できます chown apache:apache /etc/httpd/conf.d/git-team.htpasswdchmod 640 /etc/httpd/conf.d/git-team.htpasswd

6. Apacheを設定する

1. 設定ファイルを編集する

vi /etc/httpd/conf/httpd.conf

IncludeOptional conf.d/*.confの最後の行の上に次の内容を追加します。

<仮想ホスト *:80>
 ServerName XXXX #centOS IPアドレス SetEnv GIT_HTTP_EXPORT_ALL
 SetEnv GIT_PROJECT_ROOT /home/gitrepo #これは空のリポジトリが作成される場所と一致している必要があります ScriptAlias ​​/git/ /usr/libexec/git-core/git-http-backend/
 <場所 />
 認証タイプ 基本
 認証名「Git」
 認証ユーザーファイル /etc/httpd/conf.d/git-team.htpasswd
 有効なユーザーを要求する
 </場所>
</仮想ホスト>

(II) httpdを再起動する

systemctl restart httpd.service

注記:

1. httpd サービスのステータスを照会します: systemctl status httpd.service 2. 起動時に httpd サービスが開始されているかどうかを照会します: systemctl is-enabled httpd.service 3. 起動時に httpd サービスが開始されるように設定します: systemctl enable httpd.service 4. 起動時に httpd サービスが開始されないように設定します: systemctl disabled httpd.service

上記の操作を完了すると、クローンなどのgit操作を外部ネットワーク上で実行できます。

git クローン http://windows_IP_address/git/share.git

7. Android端末から上記のGitサービスにアクセスする

Pocket Gitがお勧め

ダウンロードアドレス:

リンク: https://pan.baidu.com/s/1JAUsvU-qKAg-7FJGWv2JSA

抽出コード: 9cgu

これまで、http プロトコルに基づく Git サービスを構築し、Pocket Git を使用してコンピューター上の Android と CentOS 8 間でファイルを転送してきました。

要約する

上記は、VMware+centOS 8 上で http プロトコルベースの Git サービスを構築するために編集者が紹介した方法です。皆様のお役に立てれば幸いです。

以下もご興味があるかもしれません:
  • SpringBoot+OkHttp+fastjson を使用して Github の OAuth サードパーティ ログインを実装する
  • Linux で毎回パスワードを入力せずに https を使用して git に接続する方法

<<:  一般的なテーブルコンポーネントの Vue カプセル化の完全な手順記録

>>:  Windows 10 で MySQL の解凍バージョンをインストールする方法の詳細なグラフィック チュートリアル

推薦する

一般的な MySQL 関数の例の概要 [集計関数、文字列、数値、時刻と日付の処理など]

この記事では、よく使用される MySQL 関数について説明します。ご参考までに、詳細は以下の通りです...

CentOS 7.3 で Nginx 仮想ホストを設定する方法

実験環境最小限にインストールされた CentOS 7.3 仮想マシン基本環境を構成する1. ngin...

Linux システムによって報告される tcp_mark_head_lost エラーの処理方法

問題の説明最近、ホストから次のカーネル情報が報告されました。 7月8日 10:47:42 cztes...

MySQLはJSON内部フィールドを抽出し、数値としてダンプします

目次背景問題分析1. 属性値はJson形式であり、Json操作関数を使用して処理する必要があります。...

Vueはプルダウンを実装してさらに読み込む

Element-UI に慣れた開発者なら、無限スクロールの InfiniteScroll が使いにく...

CSS3 でのシンプルな LED デジタル時計の実装方法

これは多くの人がやったことがあるはずです。ただうずうずして書きたかったので、時間をかけていじってダー...

Vueカスタム命令とその使用方法の詳細な説明

目次1. 指令とは何ですか? Vue でよく使われる組み込みの v ディレクティブv-if と v-...

React双方向データバインディングの原理についての簡単な説明

目次双方向データバインディングとは双方向データバインディングの実装データ影響ビュービューはデータに影...

VUE ユニアプリの条件付きコーディングとページレイアウトに関する簡単な説明

目次条件付きコンパイルページレイアウト要約する条件付きコンパイル条件付きコンパイルでは、特別なコメン...

Ubuntu 18.04で国内ソースを変更する方法の例

Ubuntu はソースが中国からなのでダウンロード速度が比較的遅いです。CentOS と異なり、yu...

MySQL 8.0.11 のインストールと設定方法のグラフィック チュートリアル (win10)

この記事ではMySQL 8.0.11のインストールと設定方法を参考までに記録します。具体的な内容は以...

CSSのborder-radiusプロパティを使用して円弧を設定します

現象: divを一定の振幅で円、楕円などに変更する方法: CSSのborder-radiusプロパテ...

Electronで不規則な形状の透明部分をクリックする実装

目次不規則なフォームの実装透明な部分をクリックする不規則なフォームの実装ここでは円形フォームを実装し...

シェアしたい絶妙なApple風無料アイコン素材18セット

Apple マグカップのアイコンと追加機能 HD ストレージボックス – アドオンパックセイバースノ...

vue構成ファイルはルーティングとメニューインスタンスコードを自動的に生成します

目次前面に書かれたルータ.jsonルート生成メニュー生成効果要約する前面に書かれたルートを繰り返し記...