この記事は「Attribution 4.0 International (CC BY 4.0)」ライセンス契約を使用しています。転載または改変して使用することは自由ですが、出典を明記する必要があります。 表示 4.0 国際 (CC BY 4.0) 著者: 蘇楊 作成日: 2019年3月30日 単語数: 5170語 読了時間: この記事を読むのに11分 リンク: https://soulteary.com/2019/03/30/construct-confluence-with-docker.html Docker で Confluence を構築する小規模なチームでのコラボレーションや、心配事を減らすためにお金をかけたい場合、Confluence はより良い選択肢の 1 つです。しかし、最近 Confluence をインストールしたところ、公式およびオンラインのインストール手順が比較的「時代遅れ」で非効率的であることがわかったので、この記事を書きました。 この記事では、 Docker Compose を使ってConfluenceを素早くビルドする方法と、 Traefikで使う方法を紹介します。前回の内容を読んでいれば、この記事の通りに進めば 10 分で解決できるはずです。 基本的な準備
ここでは代表的なバージョン
MySQL をストレージ バックエンドとして使用することを選択した場合は、このファイルをダウンロードする必要があります。通常は、 mysql-connector-java-5.1.47.tar.gzの圧縮パッケージが提供されます。解凍すると、後で使用するmysql-connector-java-5.1.47.jarが提供されます。 古いバージョンのソフトウェアを使用する場合まず、古いバージョンについてお話ししましょう。基本的な Wiki 機能だけが必要な場合は、次の構成ファイルでニーズを満たすことができます。 バージョン: '3' サービス: 合流: イメージ: atlassian/confluence-server:6.4.3-alpine さらす: - 8090 - 8091 ネットワーク: - トラエフィク ラベル: - "traefik.enable=true" - "traefik.port=8090" - "traefik.frontend.rule=ホスト:${DOMAIN}" - "traefik.frontend.entryPoints=http,https" ボリューム: - ./data:/var/atlassian/application-data/confluence - ./mysql-connector-java-5.1.47.jar:/opt/atlassian/confluence/confluence/WEB-INF/lib/mysql-connector-java-5.1.47.jar ネットワーク: トラエフィク: 外部: 真 上記のファイルをdocker-compose.ymlとして保存した後、上記の設定と同じくらいシンプルな別の基本設定ファイル **.env ** を作成します。ファイルの内容は次のようになります。 ドメイン=wiki.lab.com docker-compose.yml 、 .env 、 mysql-connector-java-5.1.47.jar を同じディレクトリに配置します。この時点で Traefik の準備ができている場合は、 例の Confluence をパブリック ネットワークに展開することを選択した場合は、 私たちは Traefik を使用しているため、この機能を追加するのは非常に簡単で、必要な手順は 2 つだけです。 最初のステップは、 docker-compose.ymlの - "traefik.frontend.auth.basic=${BASIC_AUTH}" 2 番目のステップでは、 BASIC_AUTH=ユーザー:$apr1$MzgRxukq$MhYl/2JidzUNlHfyfIQF41 別のスキャナーがアプリケーションを直接スキャンしようとすると、Basic 認証によってブロックされます。 アプリケーションヘルスチェックエラーインストールが完了して使用を開始すると、インターフェースの右上隅に警告メッセージが表示されます。
この問題は公式ナレッジベースに記載されています。以前のバージョン (6.6 より前) も使用している場合は、 たとえば、 docker-compose.ymlにステートメントを追加して、アプリケーション サーバーがパブリック ネットワーク アドレス上のアプリケーションにアクセスする代わりに、ローカル マシン上のアプリケーション アドレスを検索するようにします。参照構成は次のとおりです。 バージョン: '3' サービス: 合流: イメージ: atlassian/confluence-server:6.4.3-alpine さらす: - 8090 - 8091 ネットワーク: - トラエフィク ラベル: - "traefik.enable=true" - "traefik.port=8090" - "traefik.frontend.rule=ホスト:${DOMAIN}" - "traefik.frontend.entryPoints=http,https" ボリューム: - ./data:/var/atlassian/application-data/confluence - ./mysql-connector-java-5.1.47.jar:/opt/atlassian/confluence/confluence/WEB-INF/lib/mysql-connector-java-5.1.47.jar 追加ホスト: - "${ドメイン}:127.0.0.1" ネットワーク: トラエフィク: 外部: 真 とても簡単ではないでしょうか。基本的なニーズであれば、上記の構成でニーズを満たすことができるはずです。 新しいバージョンのソフトウェアの使用について次に、最新バージョンのソフトウェアを使用する方法について説明します。コンテナを使用するため、バージョンの更新は非常に簡単です。構成ファイル内のイメージのバージョン番号を変更するだけです。たとえば、下位バージョン その他の基本的な使用方法は、ソフトウェアの古いバージョンと一致しています。ただし、ここで対処する必要がある小さな問題がいくつかあります。 データベースに正しく接続できません
この問題を解決するには、暗号化された MySQL 接続を構成してコンテナ内の証明書を更新するか、暗号化された接続要求の必須使用をオフにするパラメータを追加することを選択できます。後者はより簡単で、要件が高くない場合は実行できます。 data/confluence.cfg.xmlファイル内の Traefik Basic AuthとTomcatの相互作用ソフトウェア ロジックの新しいバージョンでは、 これは明らかに Basic Auth を追加する目的ではなく、実際の使用では Confluence の認証インターフェースを外部に直接公開することは推奨されません。 解決策は簡単です。docker 繰り返しますが、アプリを再起動すると問題は解決します。 ちょっと面倒な健康診断証明書をマウントするために Traefik を使用しているため、アプリケーションは実際にはプロキシ サーバーの背後で実行されます。管理者を使用してコンソールにアクセスすると、警告メッセージが表示されます。
アプリケーションの通常の使用を考慮して、通常はサイトのベース URL を
その理由は、アプリケーションの新しいバージョンでは、ヘルス チェック ロジックにポートとプロトコルの判断が伴うためです。下位バージョンで Traefik を直接使用して証明書を逆マウントできた幸せな時代は、もう終わりました。 問題を解決するには 3 つのステップが必要です。 最初のステップは、コンテナ内の Tomcat 実行構成 次のコマンドを実行して、confluence ディレクトリに移動します。 2 番目の手順では、ポート 8090 のコネクタの構成を次の内容に更新します (最後の行に特に注意してください)。 <コネクタ ポート="8090" 接続タイムアウト = "20000" リダイレクトポート="8443" 最大スレッド数="48" 最小スペアスレッド数="10" enableLookups="false" 受け入れ回数 = "10" デバッグ="0" URIエンコーディング="UTF-8" プロトコル="org.apache.coyote.http11.Http11NioProtocol" proxyName="wiki.lab.com" proxyPort="443" スキーム="https"/> 3 番目のステップは ./server.xml:/opt/atlassian/confluence/conf/server.xml を参照してください。 アプリを再起動すると、すべて正常になるはずです。 完全な設定ファイル使いやすさを考慮して、完全なリファレンス構成をここに示します。 バージョン: '3' サービス: 合流: イメージ: atlassian/confluence-server:6.15.1-alpine さらす: - 8090 - 8091 ネットワーク: - トラエフィク ラベル: - "traefik.enable=true" - "traefik.port=8090" - "traefik.frontend.rule=ホスト:${DOMAIN}" - "traefik.frontend.entryPoints=http,https" - "traefik.frontend.auth.basic.removeHeader=true" - "traefik.frontend.auth.basic=${BASIC_AUTH}" ボリューム: - ./data:/var/atlassian/application-data/confluence - ./mysql-connector-java-5.1.47.jar:/opt/atlassian/confluence/confluence/WEB-INF/lib/mysql-connector-java-5.1.47.jar ./server.xml:/opt/atlassian/confluence/conf/server.xml を参照してください。 ネットワーク: トラエフィク: 外部: 真 やっとConfluence はチームにとって良いソリューションですが、カスタマイズ機能を備えた個人/チームには、完全にオープンソースで無料の WordPress を使用する方が良いかもしれません。次の記事では、ナレッジ マネジメントを目的とした WordPress のカスタマイズをいくつか紹介します。 以上がDockerを使用してConfluenceを構築する詳細です。Dockerを使用してConfluenceを構築する方法の詳細については、123WORDPRESS.COMの他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: ウェブページ上の小さなスペースに大きな画像を配置する方法
この記事では、WeChatアプレットで星評価を実装するための具体的なコードを参考までに紹介します。具...
写真といえば、まず背景画像が思い浮かびます。私たちの装飾の多くは背景画像を使用して実現されているから...
XML/HTML コードコンテンツをクリップボードにコピー<!DOCTYPE html PUB...
アイデア:外側のボックスは背景を設定し、内側のボックスは背景の幅と高さを設定し、ボックスを動かすアニ...
ページの自動スクロール効果は JavaScript で実現できますが、今日偶然、JS 制御なしでさま...
現在、ほとんどの CPU は浮動小数点ユニット (FPU) をサポートしています。FPU は、プロセ...
目次1. デモプロジェクト1.1 インターフェースの準備1.2 構成の準備2. Dockerがリモー...
目次MySQLクラッシュ回復プロセス1. ブラックボックス下のデータフローを更新する2. やり直しロ...
純粋な CSS で固定ヘッダーを実装するのが難しい主な理由は 2 つあります。まず、最大のシェアを持...
問題記録今日はプログレスバーに似た小さなコンポーネントを完成させるつもりでした。プロトタイプは次のよ...
目次導入Homebrewをインストールするnvmをインストールするノードをインストールするインストー...
この記事では、9グリッドカット効果を実現するためのキャンバスの具体的なコードを紹介します。具体的な内...
WeChat アプレットのスクロール ビューでは、プルアップして読み込むときにバグが多く発生します...
ユーザーの権限に応じて異なるメニュー ページを表示します。知識ポイントルートガード(事前ガードを使用...
v-for ディレクティブリストといえば、ループについても触れなければなりません。v-for 命令は...