[comment]: # translation:outdated

[comment]: # ({857906ba-e1f5ce3f})
# 3 コンテナからのアップグレード

[comment]: # ({/857906ba-e1f5ce3f})

[comment]: # ({84ee4b15-236aea13})
### 概要

このセクションでは、Zabbix **7.0**.x コンテナへの正常な[アップグレード](/manual/installation/upgrade)に必要な手順について説明します。

個別のZabbixコンポーネント[イメージ](#zabbix-image-upgrade)およびDocker [compose files](#compose-files)をアップグレードするための、それぞれ別個の手順が用意されています。

::: notewarning
アップグレードの前に、関連する[**アップグレードノート**](/manual/installation/upgrade)を必ず確認してください。
:::

::: noteimportant
アップグレードを開始する前に、アップグレード作業のために、ユーザーがデータベースに対する必要な権限を持っていることを確認してください。

Zabbix 6.0 以前からアップグレードする場合、アップグレード中に決定論的トリガーを作成する必要があります。
MySQL/MariaDB でバイナリログが有効になっている場合、これにはスーパーユーザー権限、または変数/設定パラメータ *log_bin_trust_function_creators = 1* の設定が必要です。
変数の設定方法については、[データベース作成スクリプト](/manual/appendix/install/db_scripts#mysqlmariadb)を参照してください。<br>
コンソールから実行した場合、この変数は一時的にのみ設定され、Docker が再起動されると失われることに注意してください。
この場合は、SQL サービスは実行したままにし、'docker compose down zabbix-server' を実行して zabbix-server サービスのみを停止し、その後 'docker compose up -d zabbix-server' を実行してください。<br>
または、この変数を設定ファイルで設定することもできます。
:::

データベースのサイズによっては、バージョン 7.0 へのアップグレードにかなり長い時間がかかる場合があります。

[comment]: # ({/84ee4b15-236aea13})

[comment]: # ({5cdfb3a3-27011b38})
### Zabbixイメージのアップグレード

以下の手順を使用して、任意のZabbixコンポーネントをアップグレードできます。
`zabbix-server-mysql` は必要なコンポーネントのイメージ名に置き換えてください。

1\. 現在のイメージバージョンを確認します。

```bash
docker inspect -f '{{ .Config.Image }}' zabbix-server-mysql
```

2\. 必要なイメージバージョンを取得します。例:

```bash
docker pull zabbix/zabbix-server-mysql:alpine-7.0-latest
```

`zabbix/zabbix-server-mysql:alpine-7.0-latest` は、Alpine Linux ベースで MySQL をサポートする Zabbixサーバー 7.0 の最新リリース済みマイナーバージョンを取得します。
必要な Docker リポジトリ名とタグの組み合わせに置き換えてください。
利用可能なオプションの一覧については、[コンテナからのインストール](/manual/installation/containers#docker) を参照してください。

3\. コンテナを停止します。

```bash    
docker stop zabbix-server-mysql
```

4\. コンテナを削除します。

```bash
docker rm zabbix-server-mysql
```

5\. `docker run` コマンドを実行し、必要な[環境変数](/manual/installation/containers#environment-variables)および/または[マウントポイント](/manual/installation/containers#volumes)を指定する追加引数を続けて、更新済みコンテナを起動します。

**設定例**

MySQL を使用する Zabbixサーバー:

```bash
docker run --name zabbix-server-mysql -t \
    -e DB_SERVER_HOST="mysql-server" \
    -e MYSQL_DATABASE="zabbix" \
    -e MYSQL_USER="zabbix" \
    -e MYSQL_PASSWORD="zabbix_pwd" \
    -e MYSQL_ROOT_PASSWORD="root_pwd" \
    -e ZBX_JAVAGATEWAY="zabbix-java-gateway" \
    --network=zabbix-net \
    -p 10051:10051 \
    --restart unless-stopped \
    -d zabbix/zabbix-server-mysql:alpine-7.0-latest
```

PostgreSQL を使用する Zabbixサーバー:

```bash
docker run --name zabbix-server-pgsql -t \
    -e DB_SERVER_HOST="postgres-server" \
    -e POSTGRES_USER="zabbix" \
    -e POSTGRES_PASSWORD="zabbix_pwd" \
    -e POSTGRES_DB="zabbix" \
    -e ZBX_ENABLE_SNMP_TRAPS="true" \
    --network=zabbix-net \
    -p 10051:10051 \
    --volumes-from zabbix-snmptraps \
    --restart unless-stopped \
    -d zabbix/zabbix-server-pgsql:alpine-7.0-latest
```

MySQLサーバー:

```bash
docker run --name mysql-server -t \
    -e MYSQL_DATABASE="zabbix" \
    -e MYSQL_USER="zabbix" \
    -e MYSQL_PASSWORD="zabbix_pwd" \
    -e MYSQL_ROOT_PASSWORD="root_pwd" \
    --network=zabbix-net \
    --restart unless-stopped \
    -d mysql:8.0-oracle \
    --character-set-server=utf8mb4--collation-server=utf8mb4_bin \
```

他の Zabbix コンポーネントの例を含む、さらに多くの設定例は、[コンテナからのインストール](/manual/installation/containers#examples) ページで確認できます。
 
6\. 更新を確認します。

```bash
docker logs -f zabbix-server-mysql
```

[comment]: # ({/5cdfb3a3-27011b38})

[comment]: # ({57db950d-d707ad1d})
### Composeファイル

[compose file](/manual/installation/containers#docker-compose) を使用してZabbixをインストールした場合は、このセクションのアップグレード手順に従ってください。

1\. 現在のイメージバージョンを確認します。

```bash
docker inspect -f '{{ .Config.Image }}' zabbix-server-mysql
```

2\. GitHubの[repository](https://github.com/zabbix/zabbix-docker)から最新の更新を取得し、必要なブランチに切り替えます。

```bash
git pull
git checkout 7.0
```

3\. 新しいcomposeファイルを使用してZabbixコンポーネントを起動します。

```bash
docker-compose -f ./docker-compose_v3_alpine_mysql_latest.yaml up -d
```

4\. 更新を確認します。

```bash
docker logs -f zabbix-server-mysql
```

サポートされている環境変数やボリュームのマウントポイントの一覧を含む詳細については、[コンテナからのインストール](/manual/installation/containers#docker-compose)を参照してください。

[comment]: # ({/57db950d-d707ad1d})
