# 統一デプロイメントベータ

> [!TIP] Who is Lite for?
> このソリューションはベータ版で、個人使用を目的としています。ビジネスプランは、公式にサポートされている標準的なデプロイメントオプションを使用すべきです。
> 
> Bitwarden統合自己ホスト型デプロイメントがベータ版である間、統合をインストールする人々は、最新のイメージを引き出す自動アップグレード手順を設定**すべきではありません**。Bitwardenは、アップグレードする前にリリースの安定化に時間をかけることを推奨します。
> 
> [問題を報告する方法を学びます](https://bitwarden.com/ja-jp/help/install-and-deploy-unified-beta/#reporting-issues/)。

この記事では、Bitwarden統合自己ホスト型デプロイメントのインストールと起動方法を説明します。このデプロイメント方法を使用して：

- 単一のDockerイメージを使用してBitwardenをデプロイすることで、設定を簡素化し、リソース使用量（CPU、メモリ）を最適化します。
- MSSQL、PostgreSQL、SQLite、およびMySQL/MariaDBなどの異なるデータベースソリューションを利用します。
- Raspberry PiやNASサーバーなどの代替システムでARMアーキテクチャを実行します。

## システム要件

Bitwardenの統一デプロイメントには以下が必要です：

- 少なくとも200 MBのRAM
- ストレージ 1GB
- Dockerエンジン19+

### Dockerをインストールする

統一されたデプロイメントは、あなたのマシン上で[Dockerコンテナ](https://docs.docker.com/get-started/)を使用して実行されます。統一デプロイメントは、任意のDocker編集またはプランで実行できます。あなたのインストールに最適な版を評価してください。

**インストールを進める前に、あなたのマシンにDockerをインストールしてください。**次のDockerのドキュメントを参照してください:

- [Dockerエンジンをインストールします](https://docs.docker.com/engine/installation/)

## Bitwardenを統一して実行します

統一デプロイメントは、`docker run`コマンド（[こちら](https://bitwarden.com/ja-jp/help/install-and-deploy-unified-beta/#using-docker-run/)を参照）またはDocker Compose（[こちら](https://bitwarden.com/ja-jp/help/install-and-deploy-unified-beta/#using-docker-compose/)を参照）を使用して実行できます。いずれの場合でも、コンテナーの環境変数を指定する必要があります。

### 環境変数を指定する

統一デプロイメントを実行するには、コンテナの環境変数を設定する必要があります。環境変数は、`settings.env`ファイルを作成することで指定できます。その例は私たちの[GitHub](https://github.com/bitwarden/self-host/blob/main/bitwarden-lite/settings.env)リポジトリで見つけることができます。または、`docker run`メソッドを使用している場合は、`--env`フラグを使用することで指定できます。よりパーソナライズされた統一デプロイメント体験のために、いくつかのオプションの変数が利用可能です。これらの変数に関する追加の詳細は、[ここ](https://bitwarden.com/ja-jp/help/install-and-deploy-unified-beta/#environment-variables/)で見つけることができます。

少なくとも、例の`.env`ファイルの`# 必須設定 #`セクションにある変数の値を設定してください:

| 変数 | 説明 |
|------|------|
| BW_DOMAIN | `bitwarden.yourdomain.com `をBitwardenがアクセスされるドメインに置き換えてください。 |
| BW_DB_PROVIDER | あなたのBitwardenサーバーに使用するデータベースプロバイダー。利用可能なオプションは、`sqlserver`、`postgresql`、`sqlite`、または`mysql`/`mariadb`です。 |
| BW_DB_SERVER | あなたのデータベースが稼働しているサーバーの名前。 |
| BW_DB_データベース | あなたのBitwardenデータベースの名前。 |
| BW_DB_USERNAME | Bitwardenデータベースにアクセスするためのユーザー名。 |
| BW_DB_パスワード | Bitwardenデータベースにアクセスするためのパスワード。 |
| BW_DB_FILE | あなたのデータベースファイルへのパスを指定したい場合にのみ、`sqlite`が必要です。指定しない場合、`sqlite`は自動的に`vault.db`ファイルを`/etc/bitwarden`ボリュームの下に作成します。 |
| BW_INSTALLATION_ID | [https://bitwarden.com/host/](https://bitwarden.com/ja-jp/host/)から生成された有効なインストールID。 |
| BW_インストールキー | [https://bitwarden.com/host/](https://bitwarden.com/ja-jp/host/)から生成された有効なインストールキー。 |

> [!NOTE] There's no OOTB database.
> Bitwardenの標準デプロイメントとは異なり、統一デプロイメントはデータベースが付属していません。既存のデータベースを使用することも、[この例](https://bitwarden.com/ja-jp/help/install-and-deploy-unified-beta/#using-docker-compose/)に記載されているように新しいものを作成することもできますが、いずれの場合もここに記載されている`BW_DB_...`変数に有効な情報を入力する必要があります。
> 
> 非MSSQLデータベースプロバイダーを使用すると、パフォーマンスの問題が発生する可能性があります。これらのプラットフォームのサポートは、ベータ版全体で引き続き作業が行われています。あなたのBitwarden統一デプロイメントに関連する何でもレポートするために、[この問題テンプレート](https://github.com/bitwarden/server/issues/new?assignees=&labels=bug%2Cbw-unified-deploy&template=bw-unified.yml)を使用してください。既知の問題を追跡したり、ディスカッションに参加したりするためには、[このページ](https://github.com/bitwarden/server/issues/2480)をご覧ください。

### Docker runを使用する

統一デプロイメントは、以下の例のように`docker run`コマンドで実行できます。

```
docker run -d --name bitwarden -v /$(pwd)/bwdata/:/etc/bitwarden -p 80:8080 --env-file settings.env ghcr.io/bitwarden/lite
```

上記のコマンドには、`docker run`コマンドに必要ないくつかのオプションが機能として含まれています。これには以下が含まれます：

| **名前、省略形** | **説明** |
|------|------|
| --デタッチ、-d | コンテナをバックグラウンドで実行し、コンテナIDを出力します。 |
| --名前 | コンテナに名前を付けてください。`Bitwarden `が例として使用されています。 |
| --ボリューム , -v | ボリュームをバインドマウントします。最低限、`/etc/bitwarden`をマウントしてください。 |
| --公開 , -p | ホストにコンテナポートをマップします。この例では、ポート`80:8080 `がマッピングされています。SSLを設定する際には、ポート8443が必要です。 |
| --env-file | [環境変数を読み込むファイルへのパス](https://bitwarden.com/ja-jp/help/install-and-deploy-unified-beta/#specify-environment-variables/)。あるいは、`--env `フラグを使用して環境変数をインラインで宣言します（[詳細を学ぶ](https://docs.docker.com/engine/reference/commandline/run/#set-environment-variables--e---env---env-file)）。 |

コマンドを実行したら、次のコマンドでコンテナが実行中で健康であることを確認してください:

```
docker ps
```

おめでとうございます！あなたの統合デプロイメントは現在、`https://your.domain.com`で稼働しています。それが機能していることを確認するために、ブラウザでウェブ保管庫を訪れてください。あなたは今、新しいアカウントを登録してログインすることができます。

### Docker Composeを使用する

Docker Composeを使用した統一デプロイメントの実行には、Docker Composeバージョン1.24以上が必要です。Docker composeを使用して統一デプロイメントを実行するには、たとえば`docker-compose.yml`ファイルを作成します。

```
---
version: "3.8"

services:
 bitwarden:
 depends_on:
 - db
 env_file:
 - settings.env
 image: ghcr.io/bitwarden/lite
 restart: always
 ports:
 - "80:8080"
 volumes:
 - bitwarden:/etc/bitwarden

 db:
 environment:
 MARIADB_USER: "bitwarden"
 MARIADB_PASSWORD: "super_strong_password"
 MARIADB_DATABASE: "bitwarden_vault"
 MARIADB_RANDOM_ROOT_PASSWORD: "true"
 image: mariadb:10
 restart: always
 volumes:
 - data:/var/lib/mysql

volumes:
 bitwarden:
 data:
```

`docker-compose.yml`ファイルで、以下を含む任意の設定を行ってください：

- ログおよびBitwardenデータのボリュームをマッピングします。
- ポートのマッピング。
- データベースイメージの設定。`ª`

`ª`上記の例のように、`docker-compose.yml`でデータベースを設定するのは、Bitwardenで使用するための**新しいデータベースサーバーを作成**したい場合だけです。MySQL、MSSQL、およびPostgreSQLのサンプル設定は、私たちの[例のファイル](https://github.com/bitwarden/self-host/blob/main/bitwarden-lite/docker-compose.yml)に含まれています。

あなたの`docker-compose.yml`と`settings.env`ファイルが作成されたら、以下のコマンドを実行して統合サーバーを起動します:

```
docker compose up -d
```

すべてのコンテナが正しく動作していることを確認してください。

```
docker ps
```

おめでとうございます！あなたの統一デプロイメントは現在、`https://your.domain.com`で稼働しています。それが機能していることを確認するために、ブラウザでウェブ保管庫を訪れてください。あなたは今、新しいアカウントを登録してログインすることができます。

## あなたのサーバーを更新してください

あなたの統一デプロイメントを更新するには：

### Docker run 更新

1. 実行中のDockerコンテナを停止します:

```
docker stop bitwarden
```
2. Dockerコンテナを削除します:

```
docker rm bitwarden
```
3. 次のコマンドを実行して、最新のBitwarden統合イメージをプルしてください:

```
docker pull ghcr.io/bitwarden/lite
```
4. Dockerコンテナを再度実行します:

```
docker run -d --name bitwarden -v /$(pwd)/bwdata/:/etc/bitwarden -p 80:8080 --env-file settings.env ghcr.io/bitwarden/lite
```

### Docker Composeの更新

1. 実行中のDockerコンテナを停止します:

```
docker compose down
```
2. 次のコマンドを実行して、最新のBitwarden統合イメージをプルしてください:

```
docker compose pull
```
3. 更新が必要なコンテナを再作成してください。

```
docker compose up -d
```
4. コンテナが稼働していることを確認してください：

```
docker compose ps
```

## 環境変数

統一デプロイメントは、いくつかの標準的なBitwardenサービスなしでデフォルトで動作します。これにより、統合デプロイメントのカスタマイズと最適化が向上します。これらのサービスを設定し、さらにオプションの設定を、さまざまな環境変数を編集することで構成します。

> [!WARNING] When editing Lite environment variables
> 環境変数を変更するたびに、Dockerコンテナを再作成する必要があります。もっと詳しくは[こちら](https://bitwarden.com/ja-jp/help/install-and-deploy-unified-beta/#restart-the-container/)をご覧ください。

#### ウェブサーバーポート

| **変数** | **説明** |
|------|------|
| BW_PORT_HTTP | HTTPトラフィックに使用するポートを変更します。デフォルトでは、`8080`。 |
| BW_PORT_HTTPS | HTTPSトラフィックに使用するポートを変更します。デフォルトでは、`8443`。 |

#### SSL

これらの値を使用して証明書の設定を変更します。

| **変数** | **説明** |
|------|------|
| BW_ENABLE_SSL | SSL/TLSを使用します。`真`/`偽`。デフォルト `偽`。 Bitwardenが正常に機能するためにはSSLが必要です。あなたがBitwardenコンテナでSSLを設定していない場合、BitwardenをSSLプロキシでフロントするべきです。 |
| BW_SSL_CERT | あなたのSSL証明書ファイルの名前。ファイルはコンテナ内の`/etc/bitwarden `ディレクトリに配置されていなければなりません。デフォルト `ssl.crt`。 |
| BW_SSL_KEY | あなたのSSLキーファイルの名前。ファイルはコンテナ内の`/etc/bitwarden `ディレクトリに配置されていなければなりません。デフォルト `ssl.key`。 |
| BW_ENABLE_SSL_CA | 証明機関（CA）によるサービスでSSLを使用します。`真`/`偽`。デフォルト `偽`。 |
| BW_SSL_CA_CERT | あなたのSSL CA証明書の名前。ファイルはコンテナ内の`/etc/bitwarden `ディレクトリに配置されていなければなりません。デフォルト `ca.crt`。 |
| BW_ENABLE_SSL_DH | Diffie-Hellmanキー交換を使用してSSLを使用します。`真`/`偽`。デフォルト `偽`。 |
| BW_SSL_DH_CERT | あなたのDiffie-Hellmanパラメータファイルの名前。ファイルはコンテナ内の`/etc/bitwarden `ディレクトリに配置されていなければなりません。デフォルト `dh.pem`。 |
| BW_SSL_PROTOCOLS | NGINXによって使用されるSSLバージョン。推奨のデフォルトのために空白にしておいてください。[もっと学ぶ](https://wiki.mozilla.org/Security/Server_Side_TLS) |
| BW_SSL_CIPHERS | NGINXによって使用されるSSL暗号スイート。推奨のデフォルトのために空白にしておいてください。[もっと学ぶ](https://wiki.mozilla.org/Security/Server_Side_TLS) |

> [!NOTE] Using existing SSL with Lite.
> 既存のSSL証明書を使用している場合、`settings.env`で適切なSSLオプションを有効にする必要があります。SSLファイルは`/etc/bitwarden`に保存する必要があり、`docker-compose.yml`ファイルで参照できます。これらのファイルは、`settings.env`で設定された名前と一致しなければなりません。
> 
> デフォルトの動作は、SSLが有効で、期待される場所（`/etc/bitwarden`）に既存の証明書ファイルがない場合、自己署名証明書を生成することです。

#### サービス

追加のサービスは、エンタープライズやチームのニーズなど、特定の使用ケースに対して有効化または無効化することができます。以下の値を変更することにより行います：

| 変数 | 説明 |
|------|------|
| BW_ENABLE_ADMIN | **このサービスを無効にしないでください。** 管理者パネルの機能について[ここ](https://bitwarden.com/ja-jp/help/system-administrator-portal/)で詳しく学びましょう。デフォルト `真`。 |
| BW_ENABLE_API | **このサービスを無効にしないでください。** デフォルト `真`。 |
| BW_ENABLE_EVENTS | チームとエンタープライズイベントモニタリングのためのBitwardenイベントログを有効にするか無効にします。デフォルト `偽`。 |
| BW_ENABLE_ICONS | ログインアイテムのURIで設定されたBitwardenブランドのアイコンを有効にするか無効にするかを設定します。もっと詳しくは[こちら](https://bitwarden.com/ja-jp/help/website-icons/)をご覧ください。デフォルト `真`. |
| BW_ENABLE_IDENTITY | **このサービスを無効にしないでください。** デフォルト `真`。 |
| BW_ENABLE_NOTIFICATIONSを有効にする | モバイルデバイスへのプッシュ通知を受信するための通知サービスを有効または無効にし、デバイスでのログイン、モバイル保管庫の同期などを使用します。デフォルト `真`。 |
| BW_ENABLE_SCIM | エンタープライズ組电のSCIMを有効にするか無効にするか。デフォルト `偽`。 |
| BW_ENABLE_SSO | エンタープライズ組織のSSOサービスを有効にするか無効にするか。デフォルト `偽`。 |
| BW_ICONS_PROXY_TO_CLOUD | このサービスを有効にすると、システムメモリの負荷を軽減するために、アイコンサービスのリクエストがクラウドサービスを介して操作されるようになります。 この設定を使用する場合、コンテナの負荷を軽減するために、`BW_ENABLE_ICONS `は`false `に設定する必要があります。デフォルト `偽`。 |

#### メール

あなたの統合デプロイメントのためのSMTP設定を構成します。選択したメールSMTPプロバイダから次のフィールドに情報をコピーしてください。

| **変数** | **説明** |
|------|------|
| globalSettings__mail__replyToEmail | あなたのサーバーの返信用メールアドレスを入力してください。 |
| globalSettings__mail__smtp__host | あなたのSMTPサーバーのホストドメインを入力してください。 |
| globalSettings__mail__smtp__port | SMTPホストからポート数値を入力してください。 |
| globalSettings__mail__smtp__ssl | あなたのSMTPホストがSSLを使用している場合、`true`を入力してください。 あなたのホストがTLSサービスを使用している場合、`false`に値を設定します。 |
| globalSettings__mail__smtp__username | SMTPのユーザー名を入力してください。 |
| globalSettings__mail__smtp__password | SMTPのパスワードを入力してください。 |

#### 
Yubico API (YubiKey)

| **変数** | **説明** |
|------|------|
| globalSettings__yubico__clientId | Yubico Keyから受け取ったIDに値を置き換えてください。 Yubico Keyに[ここから](https://upgrade.yubico.com/getapikey/)登録してください。 |
| globalSettings__yubico__キー | Yubicoから受け取ったキー値を入力してください。 |

### データベース設定

統一デプロイメントと互換性のあるさまざまなデータベースオプションを利用するには、追加の`.env`設定が必要になります。

### MySQL/MariaDB

`settings.env`で：

```
# Database
BW_DB_PROVIDER=mysql
BW_DB_SERVER=db
BW_DB_DATABASE=bitwarden_vault
BW_DB_USERNAME=bitwarden
BW_DB_PASSWORD=super_strong_password
```

``

### MSSQL

`settings.env`で：

```
# Database
BW_DB_PROVIDER=sqlserver
BW_DB_SERVER=db
BW_DB_DATABASE=bitwarden_vault
BW_DB_USERNAME=bitwarden
BW_DB_PASSWORD=super_strong_password
```

### SQLite

`settings.env`で：

```
# Database
BW_DB_PROVIDER=sqlite
BW_DB_FILE=/path/to/.db
```

`sqlite `の値を割り当てると、`vault.db `ファイルが自動的に`/etc/bitwarden` ボリュームに作成されます。`BW_DB_FILE は、`別のデータベース ファイルへのパスを指定する場合にのみ必要です。

### PostgreSQL

`settings.env`で：

```
# Database
BW_DB_PROVIDER=postgresql
BW_DB_SERVER=db
BW_DB_DATABASE=bitwarden_vault
BW_DB_USERNAME=bitwarden
BW_DB_PASSWORD=super_strong_password
```

#### その他

| **変数** | **説明** |
|------|------|
| globalSettings__userRegistrationを無効にする | ユーザーアカウント登録機能を有効にするか無効にするか。 |
| globalSettings__hibpApiKey | Have I Been Pwndから提供されたAPIキーを入力してください。APIキーを受け取るために[ここ](https://haveibeenpwned.com/API/Key)で登録してください。 |
| adminSettings__管理者 | 管理者のメールアドレスを入力してください。 |
| BW_REAL_IPS | `nginx.conf `で実際のIPをカンマで区切られたリストで定義します。クライアントのIPアドレスを転送するプロキシサーバーを定義するのに便利です。[もっと学ぶ](https://nginx.org/en/docs/http/ngx_http_realip_module.html)。 |
| BW_CSP | Content-Security-Policy パラメータ。このパラメータを再設定すると、機能が壊れる可能性があります。このパラメータを変更することで、あなたはこの値を維持する責任を負うことになります。 |
| BW_DB_PORT | データベーストラフィックのためのカスタムポートを指定します。指定されていない場合、デフォルトは選択したデータベースプロバイダーによります。 |

### コンテナを再起動してください

環境変数を変更した後でDockerコンテナを再起動するには、Bitwarden統合デプロイメントディレクトリから次のコマンドを実行します:

### Dockerを実行する

1. 実行中のDockerコンテナを停止します:

```
docker stop bitwarden
```
2. Dockerコンテナを削除します：

```
docker rm bitwarden
```
3. Dockerコンテナを再度実行します:

```
docker run -d --name bitwarden -v /$(pwd)/bwdata/:/etc/bitwarden -p 80:8080 --env-file settings.env ghcr.io/bitwarden/lite
```

### Docker Compose

1. 実行中のDockerコンテナを停止します:

```
docker compose down
```
2. コンテナを再作成します。

```
docker compose up -d
```
3. 次のようにして、コンテナが正しく動作していることを確認してください:

```
docker compose ps
```

## メモリ使用量

デフォルトでは、Bitwardenコンテナは利用可能なメモリを消費し、それはしばしば実行するために必要な最小限以上になります。メモリに配慮した環境では、docker `-m`または`--memory= `を使用してBitwardenコンテナのメモリ使用量を制限できます。

| **名前、省略形** | **説明** |
|------|------|
| --memory=, -m | コンテナが使用できる最大のメモリ量。Bitwardenは少なくとも200mが必要です。詳しくは[Dockerのドキュメンテーション](https://docs.docker.com/config/containers/resource_constraints/#limit-a-containers-access-to-memory)をご覧ください。 |

Docker Composeでメモリ使用量を制御するには、`mem_limit`キーを使用します。

```
services:
 bitwarden:
 env_file:
 - settings.env
 image: ghcr.io/bitwarden/lite
 restart: always
 mem_limit: 200m
```

## 問題をレポートする

Bitwardenの統一デプロイメントがベータリリースのままである間、GitHubを通じて問題をレポートし、フィードバックを提供することをお勧めします。あなたのBitwarden統一デプロイメントに関連する何でもレポートするために、[この問題テンプレート](https://github.com/bitwarden/server/issues/new?assignees=&labels=bug%2Cbw-unified-deploy&template=bw-unified.yml)を使用してください。既知の問題を追跡したり、ディスカッションに参加したりするためには、[このページ](https://github.com/bitwarden/server/issues/2480)をご覧ください。

## 追加のリソース

- Bitwarden組織を自己ホスト型で運用する予定がある場合は、[組織を自己ホストする](https://bitwarden.com/ja-jp/help/self-host-an-organization/)を参照して開始してください。

Bitwardenの標準的な自己ホスト型デプロイメントについての詳細は、以下をご覧ください:

- [インストールとデプロイ - リナックス](https://bitwarden.com/ja-jp/help/install-on-premise-linux/)
- [インストールとデプロイ - ウィンドウズ](https://bitwarden.com/ja-jp/help/install-on-premise-windows/)
- [インストールとデプロイ - 手動](https://bitwarden.com/ja-jp/help/install-on-premise-manual/)