コンテナ上のApacheのSSL証明書を無料で取得・適用する。

IT

Let’s Encrypt(SSL/TLS証明書を無料で発行できる認証局)の証明書を、
Dcokerコンテナ上のApacheサーバーで利用可能とするまでの手順。

全体像

VPSホスト側に証明書を置く構成。
Certbot(証明書を取得するコンテナ)と、
Apacheがそれぞれホストの同様のフォルダをマウントすることで、
Certbotが取得した証明書をApacheが参照出来るようにする。

手順

前提:すでに外部にHTTPで公開されていること。
 (公開していない場合は簡易的にApacheのみで公開実施している前提)
  certbotで、証明書を取得する際に実際にhttp通信を実施するため。

certbot(コンテナ)を利用します。
Let’s EncryptからSSL証明書を簡単に取得することが出来ます。

docker run -it --rm --name certbot 
-v "/usr/local/apache2/htdocs:/usr/local/apache2/htdocs" 
-v "/etc/letsencrypt:/etc/letsencrypt" 
-v "/var/lib/letsencrypt:/var/lib/letsencrypt" 
certbot/certbot certonly --agree-tos --webroot 
-w /usr/local/apache2/htdocs -d ドメイン名

上記は別ディレクトリでも問題ないです。
/usr/local/apache2/htdocsがApacheのコンテナからも参照できるように、
Apache側でもボリュームをマウントした状態で実施してください。



タイトルとURLをコピーしました