SSLを正しく機能させるには、WordPressインストールを自分のサーバーに移行する必要があります。もともとはGoDaddy共有ホスティングでしたが、外部SSL証明書のインストールは許可されていません。
少し偏執的でセキュリティについての知識があるので、Dockerコンテナ内でサービスを実行して、最悪のシナリオでの被害を制限したいと思います。
私がよくわからないのは、Dockerコンテナを接続する方法です。たとえば、MySQL/MariaDBの実行を担当するDockerコンテナがあり、WordPress PHPコードをホストして実行しているFastCGIを実行している別のDockerコンテナとそのサービスを共有する方法がわかりません。
現在Dockerコンテナの外部で実行されている私のWebサーバー(NGINX)は、Dockerコンテナの公開されたポートに沿ってプロキシすることに問題はありませんが、FastCGIサーバー(つまりPHP)はどのようにしてMySQLに到達できますかコンテナ?
Dockerでこのような複数の独立したサービスをペアリングする方法を詳しく説明したガイドはありますか?
実際、Dockerは仮想化を行いません。イメージを処理し、LXCコンテナー仮想化を使用してイメージを実行するツールにすぎません。ここで、実際にLXCとその機能を探していると思います。 LXCは仮想ネットワークを実行でき、MySQLはネットワーク経由でアクセスできます。必要なのは、ビルディングブロックを相互に接続することだけです;)。
通常のセットアップでは、各ホストには独自のIPアドレスと開いているポートのセットがあり、各ホストは仮想ネットワークを介して他のホストのTCP/IPサービスにアクセスできます。セキュリティはLinuxカーネルによって処理されます。セキュリティを処理する1つの方法は、古き良きiptablesベースのファイアウォールです。しかし、selinuxラベリングに基づく他の方法があるかもしれません。
Dockerコンテナーが機能する方法は、特に設定しない限り、デフォルトで分離されていることです。
質問に答えるには、必要なポートを開き、これらのポートを介してコンテナをリンクして、指定したポートを介してのみ通信するようにします。
Dockerfileで指定する場合、このコマンドは「EXPOSE」と呼ばれます: http://docs.docker.io/reference/builder/#expose
EXPOSE 41000
コンテナを起動するときに、公開するポートを起動時に渡すこともできます(元のDockerfileで指定されているものを上書きします)。
Sudo docker run -p 41000:41000 -d <your username>/<your image name>
-p、-publish = []コンテナのポートをホスト形式に公開します。ip:hostPort:containerPort | ip :: containerPort | hostPort:containerPort(実際のマッピングを確認するには「dockerport」を使用してください)
リンクも参照してください http://docs.docker.io/use/working_with_links_names/#working-with-links-names
WordpressおよびDocker: