contentdocker-composeでさくっとhttpsなWordPressを公開するWordPressDockerdocker-composeletsencrypt背景この度、知り合いにホームページ作成を依頼されました。制作期間が仕事の片手間で1週間しかなく、ほぼ個人サイトということもあり、(ついでに言うとただ働きなので)ここはdocker-composeでさくっと仕上げようと考えました。Encryptでhttps化も実施しました。ついでだから自分用のサイトも公開してしまおうと思い、複数サイト公開可能な構成にしました。トピックではありますが、自分用の備忘録として手順を残したいと思います。今回は下記の環境で構築しました。大まかには、下記の手順で構築していきます。2つ目以降のサイト立ち上げなお、以降の解説では、サーバのアカウントをubuntu、サイト1のドメインをexample.comとして記述していきます。同一ディレクトリにそれぞれのサイト名で、サイト毎のコンテナのファイルをまとめます。...また、WordPressの管理画面からアップロードファイルサイズ制限の変更をしておきます。デフォルトの2MBでは、ほとんどのテーマがアップロードできないと思うので。ファイアウォールの設定ターミナルからSSH接続して、ファイアウォールを設定します。例では80番やFTP関連も開けていますが、必要に応じて取捨選択してください。続いてFTPを導入します。手動でバックアップを取るとか、プラグインをインストールする予定がないのであれば飛ばしてしまって良いと思います。dockerおよびdocker-composeのインストールdocker-composeはリポジトリからインストールします。共有コンテナのディレクトリとファイルの作成まずディレクトリを作成し、その中にdocker-compose.ymlを作成します。encryptの証明書を取得、更新してくれるコンテナを立ち上げるようにします。docker-compose.ymldocker-compose.ymlの内容は下記の通りです。続いてサイト毎のディレクトリとdocker-composeを作成します。docker-compose.ymlは以下の通りに作成します。以下のコマンドを実行して、dockerネットワークを作成します。アップロードサイズ制限の変更ファイル作成WordPressの管理画面からアップロードできるテーマやメディアファイルのサイズ制限を変更します。共有コンテナディレクトリおよびサイト毎の「conf.d」ディレクトリを作成して、その中に設定ファイルを追加します。今回は20MBにしておきます。example/conf.d/uploads.iniそれぞれのファイルの内容は以下の通りです。-d上記コマンドを実行した後に、https://example.comにアクセスすると、WordPressインストール画面が開きます。2つ目以降のサイト立ち上げ今回の構成だと、1つのMySQLに複数サイトのDBを作成して運用することになります。この場合、WordPressは1つ名のサイトのデータベースは作成してくれますが、2つ目以降のデータベースは作成してくれないので、インストール前に自分でデータベースを作成する必要があります。以下の手順でデータベースを作成してください。サイト毎のディレクトリとファイルの作成」の手順と同じように2つ目のサイトのディレクトリとdocker-compose.ymlを作成してコンテナを起動すると、1つ目のサイトと同じように、WordPressインストールサイトが開けます。あとがき以上、細かい説明は省いて書いてしまいました。それぞれの手順で細かく設定したい場合は、専門の記事を探していただければと思います。今回はWordPressを立ち上げましたが、違うイメージからコンテナを起動すれば他のサービスも立ち上げられると思います。通信大学生(経済学部)です。upLoginユーザーは見つかりませんでした。