HTTPS で WordPress と NextCloud を立ち上げるための docker-compose.yml
Sponsor Link
環境&対象
以下の環境で動作確認を行なっています。
- Ubuntu 18.04 LTS server
- docker 20.10.8
HTTPS 対応な WordPress + NextCloud を立ち上げる
前回は、HTTPS 対応している WordPress を立ち上げる docker-compose.yml でした。
[Web][Docker] HTTPS な WordPress を立ち上げる docker-compose.yml
自前サーバーを Cloud Strage として使用できる NextCloud も合わせて立ち上げるように修正した docker-compose.yml を紹介します。
前回同様 検索してもそのものずばりがあまり見つからなかったので、メモしておきます。(直した方が良い設定ありましたら、教えてもらえると助かります)
docker-compose.yml
以下のファイルをつかって、docker-compose up -d です。
ドメイン名はそれぞれ 引ける状態になっていることが必要です。
クライアントを動作させるには config.phpに 以下の行を追加
config/config.php
“`
‘overwriteprotocol’ => ‘https’
“`
version: '3'
services:
https-portal:
image: steveltn/https-portal:1
ports:
- '80:80'
- '443:443'
links:
- wordpress
restart: always
environment:
DOMAINS: '<ワードプレスドメイン> -> http://wordpress:80, <NextCloudドメイン> -> http://nc21'
STAGE: 'production' # Don't use production until staging works
CLIENT_MAX_BODY_SIZE: 200M
# FORCE_RENEW: 'true'
volumes:
- https-portal-data:/var/lib/https-portal
wordpress:
image: wordpress
restart: always
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: <ユーザー名>
WORDPRESS_DB_PASSWORD: <パスワード>
WORDPRESS_DB_NAME: <DB名>
volumes:
- wordpress:/var/www/html
db:
image: mysql:5.7
restart: always
environment:
MYSQL_DATABASE: <DB名>
MYSQL_USER: <ユーザー名>
MYSQL_PASSWORD: <パスワード>
MYSQL_RANDOM_ROOT_PASSWORD: '1'
volumes:
- db:/var/lib/mysql
nc21:
image: nextcloud
ports:
- '8080:80'
links:
- mariadb
volumes:
- nextcloud:/var/www/html
restart: always
environment:
- MYSQL_PASSWORD=<パスワード>
- MYSQL_DATABASE=<DB名>
- MYSQL_USER=<ユーザー名>
- MYSQL_HOST=mariadb
mariadb:
image: mariadb
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-file-per-table=1 --skip-innodb-read-only-compressed
volumes:
- nextcloud-db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=<パスワード>
- MYSQL_PASSWORD=<パスワード>
- MYSQL_DATABASE=<DB名>
- MYSQL_USER=<ユーザー名>
volumes:
https-portal-data:
wordpress:
db:
nextcloud:
nextcloud-db:
注意点
上記設定で、サーバーとしては問題なく動作します。
ですが、macOS クライアントからの接続で問題が発生するので、macOS クライアントアプリを使うのであれば、サーバー側の設定ファイルの修正が必要になります。
NextCloud を立ち上げている container に入って、config/config.php に以下を追加します。
‘overwriteprotocol’ => ‘https’
まとめ:HTTPS な WordPress と合わせて NextCloud を立ち上げる docker-compose.yml
HTTPS な WordPress と合わせて NextCloud を立ち上げる docker-compose.yml
- https-portal を使うと簡単に HTTPS 化できるのは、WordPress も NextCloud も同じ
- NextCloud のクライアントによっては、サーバー側の設定が必要
説明は以上です。
不明な点やおかしな点ありましたら、こちらまで。
Sponsor Link