记一次Docker+Jpress的网站发布过程

话说前阵子闲来无事

找孙老师聊天

我问孙老师

最近没啥可以折腾的,docker入门容易吗?

孙老师当下就来劲了

嘬了一口二锅头就开始和我侃侃而谈

“容易啊,黑科技,船新体验,是兄弟,就一起玩”

“搭个网站几要2,3分钟”

什么?搭个网站就2,3分钟?

听起来很神奇耶

考虑到我的时间非常值钱

那就不犹豫了

马上开整


其实我是有建站的经验的

之前想用hexo搭一个

但是后来不知怎么就放弃了

然后又用gitpage搭了个

整完也就放一边了

现在回想起来

那会应该还是太燥

静不下来哎

最后用sxl的模板直接搞了一个

http://lietoumai.sxl.cn/

虽然整成功了

但是心底还是有点缺憾的

毕竟是用模板搭的

没有安装过程

“还是不够折腾啊”

我内心的小M这么跟我说道


既然这次下定决心折腾一回

就好好弄

某度了下docker搭建网站

有Wordpress,Jpress等相关搭配

考虑到Wordpress是用世界上最好的语言编写的

于是我毫不犹豫的选择了Jpress

没有别的原因

只是因为我还不够优秀

还不配使用Wordpress


选定!开整!

首先要下载docker

借助这篇

http://www.runoob.com/docker/macos-docker-install.html

brew一下就搞定了

再借助这篇

https://segmentfault.com/a/1190000009237581

pull 完mysql 再pull tomcat

然后再借助官方文档

https://gitee.com/fuhai/jpress/blob/master/doc/readme.md

成功访问 http://127.0.0.1:8080

接着一顿猛如虎的操作

成功上线本地网站

记一次Docker+Jpress的网站发布过程_第1张图片


看起来这就完事了? 不! 并没有!

“本地玩有啥意思啊 整上线呗”

孙老师用力嘬了一小口白酒

目露精光的盯着我

然后慢吞吞的吐出了这两句话

以上画面,纯属脑补

如有雷同,怎么可能

于是我便问道:“那咋整上线啊?”

“搞个云主机吗,爸爸云,充值更强云,都行,你要是想搞个英文的,可以选离婚老总云,随便整嘛”

其实那会也没多考虑

爸爸云的广告打的也挺猛的

就选爸爸云吧

购买过程还是挺容易的

因为我没有钱

所以只能选最便宜的

幸而之前有过自己搭建vps的经验

一顿猛如虎的操作

连域名也都顺带买了


在此我要特别感谢三个人

一个是前同事克总,向我安利了某vps

一个是李老师,向我当面传授了linux下如何退出保存

最后一个 当然是老而不死的FBX啦

感谢您孜孜不倦的造墙

才让我拥有了如此珍贵的体验

谢谢您一家门


接着就要远程安装了嘛

最刺激的环节就要开始了

真的是一波好几折


最开始是远程login的时候出了点小问题

大小写一直没法切换

最后终于在系统偏好设置里给整完了

然后是安装tomcat的时候  

记一次Docker+Jpress的网站发布过程_第2张图片

到这就不动了

可能要等等吧

我心想

网上的攻略也说可能要等很久

然鹅

等我吃完午饭

剃完牙

和同事吹了会牛逼

洗了个澡

敷了个面膜

远程登录

我ca

还是老样子

我就纳闷啊

这时间也太久了啊

1528ms

这看起来明显是很小的单位哎

于是用公式器换算了下

1528ms=1.528s

。。。 。。。 。。。


不行了不行了

赶紧请孙老师出山吧

孙老师看了会日志

说哎呀

你这个不行啊

tomcat放在了前台占住终端了

这样

重新开个终端

然后ssh root@爸爸云的公网Ip


哒哒! (仔细听,有声音的)

成功连上了,好开心


接着让我nc –zv下爸爸云的私IP

后来知道,这是一条检查远程端口是否可达的命令

(知识点了)

发现Nc未安装

yum一下搞定

但是因为端口错误

把8080改成了8081 

接着孙老师解释道

8081是tomcat启动的

虽然我也没有明白是啥意思

(这不重要)


最后docker ps一下下

看起来没啥问题

接着孙老师让我试一条curl 的命令

curl是啥?

经查询得知

curl是一个文件传输工具

(又是知识点)


孙老师的解释是

云主机没有显示器

没有IE啥的

所以用curl命令可以伪装成一个浏览器

说的更直白点

就是在终端显示一大坨html格式的文本

emmmm

这下稍微明白了


接着来了两行

docker -compose

docker –compose up –d

后经查询所知

docker-compose 你可以把所有繁复的 docker 操作全都一条命令,自动化的完成

docker –compose up –d 意思是指-d 在后台运行服务容器

(还是知识点)

接着curl了一下 Jpress指定ip

终端终于显示了一大坨 “….如果您准备好了,那么愉快的玩耍吧”

jpress安装成功了!!


接下去就是上线的具体步骤了

说是要先去云主机那做个配置

允许访问8080端口

幸得爸爸云的新手教程很nice

马上准确找到操作步骤

记一次Docker+Jpress的网站发布过程_第3张图片

感觉马上就要完事了吗?

不!


现在是北京时间晚上9点

我们已经成功潜入jpress配置后台

接着一顿默认操作

恩?

数据库配置错误

难道要换成公网ip ?

于是重来并根据之前添加8080端口的步骤

把3306端口也添加了一下


还是不行

网站显示不安全

感觉也不是这个原因

换safari

依然不行


这个时候我焦虑了

眼瞅着就要最后一步了啊

到底是哪里出了问题?

发现我的ss没关

会不会是这个问题呢?

当然又不是


这时孙老师又发话了

docker-compose.yml这个文件改一下

随后给了我一大摞的代码

让我给黏贴到里面去

又到了退出保存的时刻

嘿嘿嘿

我可是会这条命令的

 :wq 完美!


接着孙老师让用cat命令查了下是否保存完毕

没有存对(哭哭)


“孩子 咱们还是teamview吧”

孙老师用力嘬了两口烟

慢慢的说道

此时除了脑补一下孙老师那张无奈的脸

也只能照做了

结果是感人的

孙老师成功update完teamview之后

发现连不上我的


无奈之下

孙老师使出浑身力气

向我丢过来一个硕大无比的yml的文件让我本地保存

然后用scp-r命令

root到公网ip去

后经查询得知

scp是secure copy的简写

用于在linux下进行远程拷贝文件

而scp –r 是递归复制整个目录的命令

(好棒 又是个知识点    )

接着又是一顿猛如虎的操作

终于到了填写admin口令的页面

这个时候我又激动了

上次本地操作的时候

这一步完成就大功告成了

正待我要完结撒花之时

意外又发生了

记一次Docker+Jpress的网站发布过程_第4张图片

WTF!

我一看时间已经是晚上10:53了

啊啊啊啊啊啊

那会我满脑子都是那个鼹鼠激光炮的表情

奇怪呀

昨天到这步整完就OK了呀

又陷入了僵局

这可如何是好?

说时迟那时快

只见孙老师又用力嘬了一把花生

然后让我赶紧把我上次的在本地安装的compose文件给他看看


时间一分一秒的过去

终于在11:51分

对面传来喜讯

生了生了

是男孩!

。。。


对不起

走错片场

重来


终于在11:51分

对面传来喜讯

搞定啦!


究其原因

是数据库有问题

孙老师把数据库删掉

重来一遍

就好了


虽然最后没有看到这一步操作

但是还是上线了哇

可喜可贺

完结撒花


后记:

严格意义上来说

我是被手把手的教了搭了这个网站

纵观整个过程

我真的只是做了一点点微小的工作


虽然后续还有绑定域名的活要干

但是大部分的工作已经完成了嘛


通过这次有意义的活动

我不光知道到了很多也在接下去的日子里

永远都用不着的知识点

但是这个见证的过程还是很有意义的嘛(自我安慰)

毕竟生活嘛

本质上还是一个创造的过程

况且

没事整点新玩意

说不准以后还能防个老年痴呆啥的


行文至此

感谢所有阅读此文的朋友

除夕夜搞了这么一个玩意

嘿嘿嘿

exciting!              


PS:

最后发此文的时候

还出现一点波折。。。

发布文章的时候总是显示网络错误

于是又召唤孙老师

他那边显示没问题

奇了怪了

难道是我的文章太啰嗦了?

于是一边分布式发布

一边吐槽这模板也太小气了

但当我发到某一段的时候

又跳出了网络错误

!!!

仔细一看

原来问题出现在

表情上面

没错

就是微信上的常用表情

在这是无法使用

我要向作者提issue

好了

就这么愉快的决定了

你可能感兴趣的:(记一次Docker+Jpress的网站发布过程)