WP带SSL迁移到Docker一些总结

  1. HTTPS的端口是443, HTTP的端口是80,可以通过命令 netstat -tnl查看
  2. SSL用最基本的certbot就可以了,免费万岁,多捐赠
  3. SSL防止的就是很常见的中间人攻击,知乎用户举例,你出去旅游给亲人寄一个明星片,结果亲人收到,变成斯诺登的求助/威胁信,我在哪哪哪,我有危险,快打钱救我!被插广告也是类似原理。
  4. SSL证书保存在网站目录: – /web/ssl:/etc/letsencrypt
  5. 不需要备份,迁移之后直接renewal就行了
  6. 平时需要renewal, 主要通过两个命令, 都做成bash script就好了。
    • docker-compose run certbot renew 和
    • docker-compose run kill -s SIGHUP webserver 其中: kill -s SIGHUP 会reload 配置
  7. crontab -e 加入这个 bash script 每12小时运行一次。
  8. 主要过程:
    1. 修改docker-compose.yml的配置,增加端口, 数据卷,certbot服务。
    2. 其中:certbot的数据卷镜像用于nginx和cerbot共享,要不要挂载出来,问题都不大。所以用卷,不用目录。
    3. 其中:增加映射端口 443
    4. 第一次测试: 第一次获取证书运行命令用–staging, 之后用–force-renewal
    5. 第一次测试:docker-compose up -d 之后,需要检查 certbot的logs 是否成功获得了SSL证书:
    6. 方式一就是 docker-compose ps certbot 服务的状态要是 exit 0 正常退出,就应该是对了。
    7. 方式二,检查logs, 命令docker-compose logs certbot, 输出logs看看是否正确配置并且下载了证书,congradulations! bla 这些。
    8. nginx 多增加一个配置文件options-ssl-nginx.conf, 镜像到nginx里面。
    9. nginx conf 基本重写,用拷贝的就好了。 最后重启测试。
  9. 所有参考自 https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-docker-compose 其中 options-ssl-nginx.conf 路径有错,注意更改。


Docker Build WordPress 思路2 – docker compose 迁移

整体的思路:

  • 备份文件过来 放到web 然后wget 就好
  • 备份文件放在新主机 /bk 目录下, 其中.sql 需要镜像进去并且导入到wordpress,这个通过共享路径操作。wp文件解压作为目录直接镜像进去也可以了。
  • git clone 下来配置文件 直接docker-compose up -d 运行启动。

以下的配置文件都可以git保存下来,同时又敏感信息,一定要私有化仓储。

我用的docker-compose.yml 文件:

version: '3.3'

services:
  db:
    image: mysql:5.7
    restart: unless-stopped
    environment:
       MYSQL_DATABASE: wordpress
       
       MYSQL_ROOT_PASSWORD: wordpress
       
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress
    volumes: 
      - /web/sql:/var/lib/mysql
      - /web/import:/test

  wordpress:
    depends_on: 
      - db
    image: wordpress:5.1.1-fpm-alpine
    restart: unless-stopped
    environment:
       WORDPRESS_DB_HOST: db:3306 # host
       
       WORDPRESS_DB_NAME: wordpress # name
       
       WORDPRESS_DB_USER: wordpress # user
       WORDPRESS_DB_PASSWORD: wordpress # password
       
    ports:
       - "8000:80"   
    volumes:
      - /web/wp:/var/www/html
      
  webserver:
    depends_on:
      - wordpress
    image: nginx:1.15.12-alpine
    restart: unless-stopped
    ports:
      - "80:80"
    volumes:
      - ./wp:/var/www/html
      - ./nginx-conf:/etc/nginx/conf.d

其中volumes:

  • /web/import:/test 用于从cp文件夹复制备份的.sql到镜像,并且导入数据库, 导入到默认的wordpress数据库
  • /web/sql:/var/lib/mysql 为数据库共享数据卷
  • /web/wp:/var/www/html 为迁移的文件的目录

额外还有一个nginx.conf 位于./nginx-conf, 这个配置文件还没有配置域名的。。

server {
        listen 80;
        listen [::]:80;

        server_name example.com www.example.com;

        index index.php index.html index.htm;

        root /var/www/html;

        location ~ /.well-known/acme-challenge {
                allow all;
                root /var/www/html;
        }

        location / {
                try_files $uri $uri/ /index.php$is_args$args;
        }

        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass wordpress:9000;
                fastcgi_index index.php;
                include fastcgi_params;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                fastcgi_param PATH_INFO $fastcgi_path_info;
        }

        location ~ /\.ht {
                deny all;
        }

        location = /favicon.ico { 
                log_not_found off; access_log off; 
        }
        location = /robots.txt { 
                log_not_found off; access_log off; allow all; 
        }
        location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
                expires max;
                log_not_found off;
        }
}

最后作为测试机,修改单独的域名,我这里直接用IP地址了。。

  • define(‘WP_HOME’, ‘http://107.172.157.152/’);
  • define(‘WP_SITEURL’, ‘http://107.172.157.152/’);

添加到wp-config.php 即可

Docker Build WordPress 的思路1

1. 首先创建mysql 的 container,通过命令行:

docker run –name wp-mysql -e MYSQL_ROOT_PASSWORD=test -d -p 3306:3306 -v /root/docker-wp/web3:/test mysql:5.7

其中 -v:

挂载主机目录 /root/docker-wp/web3 到 镜像中的/test

然后通过命令mysql 导入数据库

2. 创建wordpress 的container:

docker run -d –name wp –link wp-mysql:mysql -p 80:80 -v /root/docker-wp/web3/wp/wp:/var/www/html wordpress

名称–name wp;–link 链接wp-mysql; -p端口80;-v 挂载主文件目录 /root/docker-wp/web3/wp/wp 到镜像目录 /var/www/html

现在可以启动了,但是wp用的是新的数据库名 wordpress, 修改wp-config.php其中的db name 改成刚才导入的,我的是blogdb

3. 基本可以运行了,下一步是nginx了

本人的安卓盒子设置全体验之旅

本人用的是M8S PRO L, 原生系统 android TV 7.5, 很流畅。

几个要点,不需要什么世界路由器。

首先是设置连接账户, 需要用到间接电脑上网,建议用SR桥接连接。

进入可上网状态以后单独油管还是不能用,于是装 sr

其次是可以接外接鼠标和键盘的,我的是蓝牙,即插即用的,千万不要拘泥于遥控器。。。。。。。输入SR信息的时候玩死。。

然后是可以外接USB往里面拷APP的。

国产系列的用什么 当贝TV APP市场就可以了。需要先在play store 里面下载ES浏览器,用这个安装当贝这些APK。国外的还需要安装SSSRRR这种东西。

Netflix账户可推荐,我在买SR账户一起买的,6元一个月。爽歪歪了。

[Life]叶问和社会地位

忙里偷闲,一周时间终于抽空找了一个晚上同时看了武打片箭士柳白猿和叶问。都还可以,为什么我这么喜欢看武打片呢,传统精神,箭士里面有句话说的好,世界上走捷径的事情很多,很容易就失败了,武功是少数难走捷径的事情,练成什么样子就有多少水平,人生也是不能追求捷径的。

叶问,几乎看到了泪流满面,因为,再强大的能力也无法对抗生老病死啊,面对他夫人的癌症,那是一种毫无能力的无助,并且留下的唯一的遗憾就是陪夫人的时间太少了。叶问这样的英雄也是,平凡人何尝不是。人生最怕的是遗憾。当地奋斗一辈子,回头问问真的值得么,值不值呢?

男人,不要把爱挂在嘴上。。实际行动才是硬道理。一个来劫杀叶问的泰国人进入电梯,电梯下楼,叶问把夫人挡在身后,电梯下行,把挑战者打出电梯,关上电梯门打败对方,然后等在电梯到达楼层的时候接出他夫人,一句话也没说。这就是实际行动,有担当啊。什么样的风雨早己经挡掉了啊。

男人,承受能力要好,不能让爱的人感受到一点点伤害。一定要坚强,做一个优秀的坚强的人,就是给对方一个好的优质的爱人。然后,这个论点并有论据可写。

社会地位,也是在叶问里面看到的,在我的三观里面,以为钱是一切,最重要的,是的现在我还是这样认为,还是没错,钱能解决人生九成以上的问题。但是社会地位也是有一定作用和帮助的,虽不是决定性的,例如医生职业,偶尔可以帮朋友街坊邻居看看病,相应依然有很多喜欢。叶问成了小区巡逻员,街坊十分感激,因此做一个社会地位高的职业幸福感也会相应高吧。哈哈,认识的人朋友也会更多。

我,有时候说一句对不起是如此的苍白无力。我得人生终将会有许多遗憾,也不纠结了,吞肚子里,想想许多问题还是钱可以解决的,埋头苦干争取让以后的遗憾少一点吧。

Evernote helps you remember everything and get organized effortlessly. Download Evernote.

没人机 – 零度探索者

原来高端的选择不只是DJI啦,还有后来居上的零度,优酷搜索 零度 航拍,有很多不错的视频,放上来两个,看起来很专业的样子。

价格四千,主要是视频很稳定,云台好吧~ 完全感觉不到是在空中,就是要这种感觉!!再看看其他品牌狼蛛的客户拍摄的视频,简直是吃了摇头丸~

 

这个应该是用户的测试:

足球场,感觉不动。。在飞么??

 

 

尼采

我还是一个初级尼采粉,原谅我只摘抄了一些经典名句,我来完成耶稣未竟的事业!

尼采的作品不能以“名言名句”的形式节选来读。

一。

谁终将声震人间,

必长久身自缄默。

谁终将点燃闪电,

必长久如云漂泊。

我的时代还没到来,

有的人死后方生。

– 《查拉图斯特拉如是说》


 

二。

但凡不能杀死你的,最终都会使你更强大。
That which does not kill us makes us stronger.

三。

我感到难过,不是因为你欺骗了我,而是因为我再也不能相信你了。

四。

每一个不曾起舞的日子,都是对生命的辜负。/每一段不努力的时光,都是对生命的辜负。

五。

其实人跟树是一样的,越是向往高处的阳光,它的根就越要伸向黑暗的地底。

六。

He who has a strong enough why can bear almost any how.
一个人知道自己为什么而活,就可以忍受任何一种生活。

七。

And those who were seen dancing were thought to be insane by those who could not hear the music.
那些听不见音乐的人认为那些跳舞的人疯了。

八。

人生没有目的,只有过程,所谓的终极目的是虚无的。—人的情况和树相同。它愈想开向高处和明亮处,它的根愈要向下,向泥土,向黑暗处,向深处,向恶—千万不要忘记。我们飞翔得越高,我们在那些不能飞翔的人眼中的形象越是渺小。

九。

你要搞清楚自己人生的剧本——不是你父母的续集,不是你子女的前传,更不是你朋友的外篇。对待生命你不妨大胆冒险一点, 因为终究你要失去它。如果这世界上真有奇迹,那只是努力的另一个名字。生命中最难的阶段不是没有人懂你,而是你不懂你自己。

十。

没有可怕的深度,就没有美丽的水面。 – 《尼采遗稿选》

十一。

一切美好的事物都是曲折地接近自己的目标,一切笔直都是骗人的,所有真理都是弯曲的,时间本身就是一个圆圈。

十二。

假使有神,我怎能忍受我不是那神,所以没有神!

十三。

你今天是一个孤独的怪人,你离群索居,总有一天你会成为一个民族!

“The individual has always had to struggle to keep from being overwhelmed by the tribe. If you try it, you will be lonely often, and sometimes frightened. But no price is too high to pay for the privilege of owning yourself.”

这翻译不行: 每一个个体都应该挣扎对抗,防止被一个民族的征服。如果你尝试了,那么你会是孤独的,有时候是害怕的。虽然代价很高,但是你拥有了拥有自己的荣耀。

十四。

理想主义者是不可救药的:如果他被扔出了他的天堂,他会再制造出一个理想的地狱。

十五。

世界弥漫着焦躁不安的气息,因为每一个人都急于从自己的枷锁中解放出来。

十六。

It is not a lack of love, but a lack of friendship that makes unhappy marriages.
婚姻不幸福,不是因为缺乏爱,而是因为缺乏友谊。

十七。

我们走得太快,是该停下来等等自己的灵魂了。

十八。

太阳是我胯下金灿灿的睾丸。。

十九。

我站在赤裸的危岩上面,
黑夜的衣裳将我裹住,
从这光光秃秃的高处,
我俯瞰一片繁盛的国土,
我看到一只鹰在盘旋,
鼓着青春泼辣的勇气,
一直冲向金色的光芒,
升到永恒的火焰里去。

二十。

“Whoever fights monsters should see to it that in the process he does not become a monster. And when you look into the abyss, the abyss also looks into you.”“想要战胜怪物就要了解成为怪物的过程;当你回望无底深渊的时候,无底深渊也回望着你”

这个翻译有误么,he does NOT become a monster? 是的:

与恶魔缠斗的人要时刻警惕,以免自己也变成恶魔。如果你久久地注视着深渊,那深渊同时也在注视着你

“Battle not with monsters, lest ye become a monster, and if you gaze into the abyss, the abyss gazes also into you.”
Read more at http://izquotes.com/author/friedrich-nietzsche

“Be careful when you fight the monsters, lest you become one.”
―Friedrich Nietzsche
Read more at http://izquotes.com/author/friedrich-nietzsche/2

。。

与恶龙缠斗过久,自身亦成为恶龙。凝视深渊过久,深渊将回以凝视。

二十一。

只有不断引起疼痛的东西,才不会忘记。疼痛是本能,是维持记忆力最强有力的手段。

二十二.

Man is the cruelest animal. At tragedies, bullfights, and crucifixions he has so far felt best on earth; and when he invented hell for himself, behold, that was his very heaven.”
Read more at http://izquotes.com/author/friedrich-nietzsche

二十三。

只有经历过 地狱磨难的人才有建造天堂的力量。

二十四。

弥达斯国王在树林里久久地寻猎酒神的伴护,聪明的西勒诺斯,却没有寻到。当他终于落到国王手中时,国王问道:对人来说,什么是最好最妙的东西?这精灵木然呆立,一声不吭。直到最后,在国王强逼下,他突然发出刺耳的笑声,说道:“可怜的浮生呵,无常与苦难之子,你为什么逼我说出你最好不要听到的话呢?那最好的东西是你根本得不到的,这就是不要降生,不要存在,成为虚无。不过对于你还有次好的东西–立刻就死。”

二十五。

人是一条污脏的河。因此,我们必须成为大海,方能容纳一条不清的河而不至自污。

二十六。

一旦选择相信 ,一切皆有可能.

二十七。

Hope is the worst of all evils, for it prolongs the torment of man. 希望是万恶之首,它不断延长着人们的痛苦。

二十八。

上帝已经死了,因为我的存在。

二十九。

“The man of knowledge must be able not only to love his enemies but also to hate his friends.”
― Friedrich Nietzsche

三十。

“Every deep thinker is more afraid of being understood than of being misunderstood.” – http://www.goodreads.com/author/quotes/1938.Friedrich_Nietzsche