进入2018年,新的一年“网络质量”感觉不太好,这几天发现我的个人技术博客打不开了(www.imoocc.com),我的站点之前是放在了日本的一台服务器上,这两天很莫名的网络无法连通了。。。
迁移过多次,实在不想每一次都为了站点迁移,去重新寻找、搭建自己的环境,这些事情就算非常顺畅也需要花费上半天的功夫。
没有意义,那怎么办呢?
于是乎,我想起用它,我的博客站点是技术类的站点,其占用空间资源少,访问用户不算高,采用python语言开发,dango为框架。
所以,由于对空间的性能要求不高,但一定要满足我的快速迁移的目的,因为以后我可能需要经常作到搬移“老窝”。究竟如何办?我决定采用docker 来一次解决我这个迫切需求!
所以我决定把站点所有内容都统一封装到一个容器中,并且生成一个我的技术站点专用镜像,这样的方式既能解决快速迁移扩容的需求的同时,也能通过镜像文件,进行多分拷贝和备份,也实现了一个非常好的数据冗余效果。
采用docker非常美妙,我觉定把我的博客装入docker容器。接下来我将描述下我是如何一步步来实现的了,先来展示下我这个流程图效果,如下:
采用的步骤,归总为如下几个重要的步骤了:
1、本地安装docker
2、搭建本地容器
3、将站点塞到docker容器中
4、生成我的站点镜像
5、将镜像打包,完成备份
6、迁移镜像并启用
接下来我详细的介绍下,我的安装步骤,本人(jeson)使用的是mac电脑,如果你使用的不是mac,前面的本地环境安装docker会存在一点点差异,其它的环节思路上是一样的。
一、安装
官方介绍文档,如下:
https://www.apple.com/cn/macos/how-to-upgrade/
版本选择,如果想安装最新版本的docker ,对于mac os的系统版本要求10.11后的版本,需要解决的化,有两种方法了:
第一种,升级本地的mac os操作系统
这个费劲了,所以我决定采用第二种方法。
第二种就是安装较早版本的docker,如下:
下载,安装完成后,打开terminal,执行如下命令:
Jeson:~ renren$ docker -v
Docker version 17.03.0-ce, build 60ccb22
二、修改镜像加速器地址
1、获取阿里云镜像地址
点击(镜像加速器-然后获取加速的地址)
2、Docker for Mac 配置阿里镜像加速器
打开Docker->Preferences...
Insecure registries配置:registry.mirrors.aliyuncs.com
Registry mirrors配置自己的镜像加速器地址即可.
重启docker生效,如图:
三、启动容器
1、启动文件共享
进入到设置中:preferences
2、启动docker
docker run -it -p 222:22 -p 8888:80 -p 33060:3306 -v /opt/app/jeson:/jeson --privileged jimoocc:v1 -name Jimooccv2 bash
-p 设置端口映射
-v /opt/app/jeson:/jeson 设置数据卷挂载,将宿主机的某个目录挂载到容器之中
-name 设置容器名称
四、封装到docker 容器之中
1、更新源、安装基础服务
apt-get update
2、安装sysv-rc-conf
用于设置开机启动
apt-get install sysv-rc-conf
3、安装mysqld
apt-get install mysql-server
4、安装openssh
apt-get install openssh-server
5、安装nginx
apt-get install nginx
6、安装python
apt-get install python
apt-get install python-setuptools
接下来,安装我的博客模块、部署代码了...
六、打包迁移
1、打包容器为镜像
docker commit 6bd882615bb6 jimoocc:v2
2、镜像打包
docker save -o jimoocc_v2.tar jimoocc:v2
3、加载镜像
docker load --input ./jimoocc_v2.tar
4、查看镜像
docker images
好了,大功告成,以后我想怎么迁就怎么迁,谁也拦不住我!
测试下,来展示下我的站点!
最后,大家觉得这篇文章不错,请转发,“幕客老师”将提供更多好的技术分享给大家,谢谢大家!
预祝:大家元宵快乐~团团圆圆~
共同学习,写下你的评论
评论加载中...
作者其他优质文章