Dockerを使用してphabricatorをインストールする方法

Dockerを使用してphabricatorをインストールする方法

ここでは Ubuntu 16.04 システムを使用しています。

dockerを使用したインストール

https://hub.docker.com/r/redpointgames/phabricator/ から提供されるイメージを使用します。

このイメージでは、さまざまなプラグインが提供されていますが、MySQL データベース アドレスは自分で提供する必要があります。

まず、docker を使用して MySQL データベースをインストールします。参照: https://www.jb51.net/article/148880.htm

上記のチュートリアルによると、mysqlをインストールし、アカウントはroot、パスワードは123456です。

合格

docker inspect <container id> |grep IPAddress

mysql コンテナの IP アドレスを知ることができます。見つかったコンテナのプライベート IP アドレスは 172.17.0.2 です。

次に、docker を使用して phabricator をインストールします。

docker pull redpointgames/phabricator # 拉取最新版的phabricator

起動する

docker run --name phabricator -p 443:443 -p 332:22 -p 8891:80 -v /root/phabricator/backup:/repos -e PHABRICATOR_HOST=xxxxxx:8891 -e MYSQL_HOST=172.17.0.2 -e MYSQL_USER=root -e MYSQL_PASS=123456 -e PHABRICATOR_REPOSITORY_PATH=/repos -e PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin -it redpointgames/phabricator /bin/bash /app/init.sh

ここで、xxxx はサーバーの外部 IP アドレスです。サーバーに docker によってデプロイされた phabricator には、http://xxxxx:8891 からアクセスできます。ただし、セキュリティ グループを有効にすることを忘れないでください。

インストールが完了したら、外部ネットワークIPを使用できます。
アクセスするにはポート番号 8891 を追加します。

このとき、追加したユーザーはデフォルトでシステム管理者となり、バックグラウンドにログインしてその他の設定を行うことができます。ただし、まだこのページを終了しないでください。いくつかの設定が必要なためです。

このインターフェースに初めてアクセスする場合は、コンソールのコマンドを使用してユーザーを追加することもできます。

コンテナに入ります cd /srv/phabricator/phabricator
./bin/アカウント管理

管理者ユーザーがログアウトすると、次のメッセージが表示されます。

この Phabricator インストールでは、ログインに使用できる有効な認証プロバイダーが設定されていません。すべてのプロバイダーを無効にして誤ってロックアウトしてしまった場合は、 phabricator/bin/auth recover <username>を使用して管理者アカウントへのアクセスを回復できます。

次のコマンドを実行してください

コンテナに入ります cd /srv/phabricator/phabricator
./bin/auth 回復 luanpeng (Web ページで作成された管理者アカウント)

Web ページから入力するように求められます。

このリンクを使用して、Web インターフェースから「luanpeng」アカウントへのアクセスを回復します。
  http://xxxxxx:8891/ログイン/once/recover/1/xxxxxxxxx/
ログイン後、「Auth」アプリケーションを使用して認証プロバイダーを追加または復元し、通常のログインを成功させることができます。

指示に従ってください

ホームページの左の列でAuthを選択し、次の数字を入力します。

ユーザーがログインして登録できるようにする

今のところ、phabricatorはインストールされています。

Docker インストールを使用しない場合は、個別にデプロイできます。ただし、手順がかなり複雑なので、docker 経由でデプロイすることをお勧めします。

インストールスクリプトを使用してインストールする

インストール スクリプトを作成します。 URL を開き、Web ページ内のスクリプトの内容を新しく作成された sh ファイル (https://secure.phabricator.com/source/phabricator/browse/master/scripts/install/install_ubuntu.sh) にコピーします。

URL からスクリプト ファイルをダウンロードするか、ローカルで直接 sh ファイルを作成し、Web ページの sh コードをコピーします。ローカルインストールスクリプトinstall_ubuntu.shを作成する

インストールディレクトリ /home/luanpeng/work/phabricator を作成します。

インストールスクリプトをインストールディレクトリにコピーし、スクリプトを実行します。

sh install_ubuntu.sh

インストール スクリプトを実行し、画面の指示に従います。このスクリプトは、git、apache、mysql、php などの一連のツールを自動的にインストールします。

注意: MySQL をインストールするときに、ルート パスワードの入力が数回求められます。後で使用する際に便利なように、パスワードを空に設定することをお勧めします。

Phabricatorとその依存関係をダウンロードする

$ cd somewhere/ # インストールディレクトリを選択 somewhere/ インストールディレクトリに切り替えます $ git clone git://github.com/facebook/libphutil.git
どこか/ $ git clone git://github.com/facebook/arcanist.git
どこか/ $ git clone git://github.com/facebook/phabricator.git

WEBサーバー: Apacheの設定

サーバー名を追加
(1)httpd.confを変更します。Apacheをインストールしたばかりのときは、このファイルは空のはずです。 (2.4.x バージョンの場合は、/etc/apache2 パスに httpd.conf ファイルを作成するだけです)
次の内容を追加します: ServerName localhost
(2)保存して終了します。
2. Apacheのインストールを確認する(1)Apacheサービスを再起動する
/etc/init.d/apache2 を再起動
(2)ページを確認します。ブラウザを開き、アドレスバーにlocalhostと入力します。 「It works」という文字が表示されるかどうかを確認します。表示される場合、Apache は正常に動作しています。それ以外の場合は、httpd.conf が正しく設定されているかどうかを確認する必要があります。

Phabricator の更新

Phabricator は継続的に開発されているため、頻繁に更新する必要があります。アップデート方法:

  • ウェブサーバーを停止する
  • git を実行して libphutil/、arcanist/、phabricator をプルします
  • phabricator/bin/storage アップグレードを実行する
  • ウェブサーバーを再起動します

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • Docker に共通コンポーネント (mysql、redis) をインストールする方法
  • Docker コンテナのネットワーク障害に対する 6 つの解決策
  • Docker Swarm を使用して分散クローラー クラスターを構築する例
  • Docker で複数の MySQL コンテナを作成して実行する方法の例
  • DockerプライベートイメージライブラリとAlibaba CloudオブジェクトストレージOSSの簡単な分析
  • Docker で MySQL クラスターを構築する方法の例
  • docker-compose ネットワーク設定についての簡単な説明
  • docker pullがリセットされる問題を解決する
  • docker イメージのプル速度が遅い問題の解決策
  • 実行後にdocker nginxにアクセスできない問題の解決策
  • Dockerをクリーンアンインストールする方法の詳細な説明

<<:  広告を閉じるための JavaScript カウントダウン

>>:  MySQL PXC は IST 送信のみで新しいノードを構築します (推奨)

推薦する

Prometheusコンテナのデプロイメントのための実用的なソリューション

環境ホスト名IPアドレス仕えるプロメテウス192.168.237.137プロメテウス、グラファナノー...

MySQL ロックの知識ポイントのまとめ

ロックの概念①. 現実世界では、鍵は外の世界から身を隠したいときに使う道具です。 ②. コンピュータ...

MySQL でテーブル メタデータ ロックを待機する理由と方法

MySQL が alter table などの DDL 操作を実行すると、テーブル メタデータ ロッ...

Puppeteer を使用して Linux (CentOS) で Web ページのスクリーンショット機能を実装する

Linux に puppeteer をインストールするときに、次の問題が発生する可能性があります。こ...

時間に基づいて日付をクエリするためのMySQL最適化テクニック

たとえば、昨日新規登録されたユーザーを照会するには、次の 2 つの書き方があります。 説明する ch...

MySQLの外部結合と内部結合クエリの違い

外部結合の構文は次のとおりです。フィールド名を選択FROM テーブル名 1 LEFT|RIGHT|F...

MySQL SQL文を最適化するためのヒント

十分に最適化されていない、またはパフォーマンスが極端に低い SQL ステートメントに直面した場合、通...

Ubuntu LinuxにOracle Java 14をインストールする方法

最近、Oracle は Java 14 (または Oracle JDK 14) の一般公開を発表しま...

Nginx のアクセス制御とパラメータ調整方法

Nginx グローバル変数Nginx には、$variable 名を通じて使用できるグローバル変数が...

Ubuntu の Python で C/C++ メソッドを呼び出すダイナミック リンク ライブラリの詳細な説明

ブーストをインストールPython から C/C++ を呼び出す方法はたくさんあります。この記事では...

Vueコンポーネント通信のさまざまな方法の詳細な説明

目次1. 父から息子へ2. 息子から父へ3. 親子関係のないコンポーネントの値の転送4. ヴュークス...

一般的なMySQLストレージエンジンの長所と短所

目次すべてのストレージエンジンを表示InnoDB ストレージ エンジンMyISAM ストレージエンジ...

MySQL可視化ツールNavicatへの接続方法

Navicatをインストールした後次のエラーが発生する場合があります: Client does no...

Vue での mixin の応用について議論する

Mixin は、再利用可能な機能を Vue コンポーネント間で分散する非常に柔軟な方法を提供します。...