上篇文章,以淘宝举例电商的演变过程,发现从个人网站到java网站,分布式。以应用程序做服务化,数据库采用读写分离分库分表,redis cluster,oss图片处理。今天说说如何落地。
(一)虚拟机搭建
•① 虚拟机创建
通过源码生成4个虚拟机,准备工作。vagrant已经安装了 对应的docker。用docker安装nexus就是为了避免环境变量,用户赋权等复杂的操作。对于vagrant的如何安装不用的系统不一样可以参看 mac 安装vgarant :https://idig8.com/2018/07/29/docker-zhongji-07/ window安装vgarant https://idig8.com/2018/07/29/docker-zhongji-08/
(二)环境搭建
里面涉及到的安装方式很多,能简化的我都用docker来完成的,不能简化的还是中规中矩按照正常的方式起来进行安装。
•① docker安装Gogs(72.101)
https://hub.docker.com/r/gogs/gogs
代码语言:javascript复制切换root用户
代码语言:javascript复制从镜像库拉取
代码语言:javascript复制创建相应文件夹
代码语言:javascript复制创建docker容器gogs,关闭防火墙
WARNING: IPv4 forwarding is disabled. Networking will not work. 虚拟机端口转发 外部无法访问。
代码语言:javascript复制解决方案:启动docker web服务时【虚拟机端口转发 外部无法访问】
再次访问gogs的配置页面 192.168.72.101
如何配置gogs
IP 不要使用localhost,负责外部无法访问容器了
安装完毕
创建仓库测试
修改文件提交测试,发现也是没问题的。看来gogs已经安装完毕了。
用户名:liming 密 码:123456
•② 安装Jenkins(72.102)不推荐docker安装
容器中安装jdk,maven,git等,这个需要的挂载比较多,同时dockerfile比较复杂。按照我的shell一键安装。源码:jenkins nexus gogs/jenkins.sh
官网:https://jenkins.io/zh
代码语言:javascript复制切换root用户
查看shell脚本
代码语言:javascript复制编辑脚本
代码语言:javascript复制脚本赋权,运行脚本
安装完成
代码语言:javascript复制第一次安装查看秘钥
网页安装jenkins,秘钥就是上面复制的
选择插件安装
pipline的插件全部安装,如果是docker安装jenkins,插件老安装失败
使用admin登录,密码还是刚才的cat nobup.out的密码 修改密码,密码修改成 123456
用户名:admin 密 码:123456
代码语言:javascript复制
•③ docker安装Nexus(72.103)
https://hub.docker.com/r/sonatype/nexus3
代码语言:javascript复制切换root用户
代码语言:javascript复制从镜像库拉取
代码语言:javascript复制创建相应文件夹
代码语言:javascript复制创建docker容器nexus,关闭防火墙
代码语言:javascript复制查看状态
安装完毕
用户名:admin 密 码:admin123
PS:docker的方式安装gogs 和 nexus。jenkins正常的方式安装。