原創(chuàng)文章,歡迎轉(zhuǎn)載到逊。轉(zhuǎn)載請(qǐng)注明:轉(zhuǎn)載自IT人故事會(huì)吮便,謝謝!
原文鏈接地址:『中級(jí)篇』docker之wordpress容器SSL(番外篇)(78)
搞了2天終于搞定了镜粤,現(xiàn)在分享給大家捏题。 apache2 容器內(nèi)安裝SSL實(shí)現(xiàn)wordpress證書(shū)安裝。
前提
『中級(jí)篇』docker容器安裝wordpress(37) 通過(guò)上邊的方式已經(jīng)安裝了wordpress 和mysql 繁仁,可以正常的訪問(wèn)
準(zhǔn)備工作
- 進(jìn)入容器
docker exec -it wordpress的容器名稱(chēng) /bin/bash
- 開(kāi)啟SSL
其中一個(gè)有結(jié)果就算通過(guò)了
a1enmod ssl 或者 a2enmod ssl
- 容器安裝vi 和 rz
apt-get update
#編輯文件使用
apt-get install vim
#從阿里或者騰訊云涉馅,華為云申請(qǐng)的證書(shū)上傳
apt-get install lrzsz
- 證書(shū)上傳
cd /etc/apache2
mkdir ssl
cd /etc/apache2/ssl
rz
#將華為云的三個(gè)證書(shū)上傳到這個(gè)目錄下
- 配置/etc/apache2/sites-enabled/default-ssl.conf
#如果沒(méi)有的話從/sites-available里面復(fù)制過(guò)去
cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/default-ssl.conf
#修改文件
vi /etc/apache2/sites-enabled/default-ssl.conf
按照我的進(jìn)行修改。紅色指的這幾個(gè)修改下
- 檢查配置
查看apache2/sites-enabled目錄下是否存在default-ssl.conf黄虱,
查看apache2/mods-enabled目錄下是否存在ssl.conf稚矿、ssl.load
如果存在,那就說(shuō)明沒(méi)問(wèn)題了,如果不存在的話晤揣,從相應(yīng)的sites-available目錄下復(fù)制進(jìn)去桥爽。
- http請(qǐng)求強(qiáng)制跳轉(zhuǎn)到https
vi /etc/apache2/sites-available/000-default.conf
增加下面的配置
ServerAdmin webmaster@
DocumentRoot /var/www/html
<Directory "/var/www/html">
RewriteEngine on
RewriteBase /
# FORCE HTTPS
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) [https://%](https://%25/){SERVER_NAME}/$1 [R,L]
</Directory>
- 重啟apache
service docker restart
docker wordpress容器增加端口
- 找到wordpress容器
cd /var/lib/docker/containers
- 為了防止你眼花弄錯(cuò) 先備份
cp config.v2.json config.v2.json_bak
cp hostconfig.json hostconfig.json_bak
- 停止docker
systemctl stop docker 或者 service docker stop
- 修改增加端口
原來(lái)只有80 我增加了443
vi hostconfig.json
原來(lái)只有80 我增加了443
vi config.v2.json
- 保存之后啟動(dòng)docker
增加了443
systemctl start docker
安全組中增加443
安裝插件
只需要這2個(gè)插件
終于搞定
輸入:idig8.com自動(dòng)跳轉(zhuǎn)
PS:在云主機(jī)多虧了備份,有幾次一不小心都差點(diǎn)起不來(lái)了自己寫(xiě)的文章都白費(fèi)了昧识,一定要給機(jī)器備份后在弄钠四,防止你的一個(gè)字母寫(xiě)錯(cuò)滿(mǎn)盤(pán)皆輸。參考https://peter.pudaite.net/2017/05/29/enabling-https-on-the-standard-wordpress-docker-image/ 老外寫(xiě)的很穩(wěn)