原来在服务器上装好了nginx+certbot,很顺畅,但是因为特殊原因需要变成docker的。一下子就变得很麻烦。
删除之前的nginx和certbot
这个算自作孽吧,一开始就用docker多好,原本nginx是用https://certbot.eff.org/lets-encrypt/ubuntufocal-nginx装的。
ssl证书卸载参照https://www.cnblogs.com/Crazy-Liu/p/11090116.html. 顺便一说,如果certbot不用部署在docker上的话,/etc/letsencrypt文件夹可以保留,或者移到其他地方备份。
certbot revoke ####这个是撤销命令,执行这命令下面会报错要让我指定变量位置
certbot revoke --cert-path /etc/letsencrypt/archive/mateluncher-circle-test.ruijie.com.cn/cert.pem ###撤销这个cert.pem证书,一般默认都是这个位置,我的域名是mateluncher-circle-test.ruijie.com.cn
certbot delete ###删除完后再次执行就会说没有证书文件了,根据自己需要删除域名指定证书
一般删完证书后是需要修改nginx相应配置,重启nginx,但我连nginx也要一并删了。
//卸载nginx
ps -aux|grep nginx #查看是否有运行nginx
nginx -s quit #等进程完成退出nginx,正常建议用这个
nginx -s stop #快速停止nginx,相当于强退
sudo apt remove nginx #我是用apt-get装的,用yum的改成yum
whereis nginx #查看nginx运行文件夹,之后rm -r 删除
find / -name nginx* #查看nginx文件,之后rm -r 删除
//卸载snap
sudo snap list #列出已经安装的snap包
sudo snap remove <package-name> #卸载snap中安装的包
sudo apt autoremove --purge snapd #卸载snap-core
安装nginx-docker
这个docker的安装就不写在这里了,直接默认安装好进行操作。我是把docker权限赋予用户,所以之后的都不打sudo了,自己注意.
由于我容器里头不想装vim什么的,选择直接映射到本地,我是在用户目录下生成了个mydocker文件夹储存这些东西。
mkdir ~/mydocker #生成目录,之后用于储存配置
mkdir ~/mydocker/nginx
docker search nginx #查找nginx版本
docker pull nginx #我直接默认下载官方的latest版,此时是version是nginx/1.2