CRCMS

致力于打造全面化的开源CMS系统

大道至简


  1. Golang Interface 基础示例一

    路径interfaces/demo.go 123456789101112package interfacestype Summationer interface { Sum(param1, param2 int) int}type Summation struct {}func (s *Summation) Sum(param1, param2 int) int{ return param1 + param2} main调用123456 …

    于  Golang, Interface, 接口 继续阅读

  2. Gitlab+Jenkins+Bash 搭建多流水线自动部署

    简介因为涉及到的子项目非常多,为了方便统一更新部署测试等相关运行代码,所以Jenkinsfile在本项目中只是起到一个阶段挂载的作用,大部分部署代码使用的是Bash。此方法并不适合大规模集群部署。 Jenkins安装安装启动1docker-compose up -d jenkins 本环境中使用的是laradock中Jenkins进行安装,如果非Docker请参考官方文档进行安装 增加Jenkins插件在系统管理->插件管理中安装Blue Ocean和GitLab插件 在项目根目录新 …

    于  gitlab, jenkins, pipeline, 自动部署 继续阅读

  3. ubuntu18.04 安装

    简述尝试了windows,macos,ubuntu,最后还是觉得ubuntu好用。可能是屌丝本质或者我没有领悟其精髓,macos在我看来并不好用,但界面确实还可以。为了方便我折合了大部分于shell中,可以直接运行shell安装 https://github.com/crcms/system-initialization 来几张图看看效果 工具基础功能包1234# apt updatesudo apt-get updatesudo apt-get install -y vim unzip gi …

    于 继续阅读

  4. hexo 集成 travis ci 自动部署

    增加github token至travis ci 在github Settings->Developer settings->Personal access tokens生成一个travis token 当出现如图Connection successful,则表示连接成功 进入travis ci项目settings->Environment Variables增加token值为环境变量 设置travis.yml123456789101112131415161718192021 …

    于  hexo, travis 继续阅读

  5. 记一次 Composer 0.0 版本控制的坑

    简述 ^ 和 ~ ^:控制最高版本,如^1.2.3 => >=1.2.3,<2.0 ~:控制最低版本,但允许版本号的最后一位数字上升,如~1.2.3 => >=1.2.3,<1.3 同为二位号的版本时,~和^表示相同,如^1.2或~1.2 => >=1.2,<2.0 关于0.0的起始版本号当版本号为0的时候,如果开启第三位版本号,则composer则认为固定版本 如:~0.0.3或^0.0.3,则composer只能安装0.0.3无法扩展升 …

    于  composer, php 继续阅读

  6. 放弃wordpress,集成hexo

    原因经常迁移太麻烦,不如直接github+hexo 部署安装Hexo,git deploy1npm install -g hexo-cli 详细教程请参考官方链接 hexo 创建github 创建名称为*.github.io仓库 在settings中设置github pages 设置custom domain 在域名管理中解析CNAME,指向你的*.github.io域名 发布内容1hexo d -g 注意: 在仓库目录中增加CNAME文件,内容为你的custom domain hexo gi …

    于  hexo, next 继续阅读

  7. 2018.8.20 宝贝出生

    2018.8.20 9:392018.8.20 9:39 我的宝贝出生了。 升级奶爸最近累吐血了,一周来几乎没有睡过一个好觉,坐哪都能睡着,但心里却是暖暖的。是啊,“我有孩子的,我自己的孩子,我当爸爸了”。 其实我以前对小孩是一点不感冒的,朋友、亲人生小孩最多去看一眼并没有太大感觉。 但当自己的孩子出生后我发现我好像变了,总是想看着她,看不够,一天见不到都睡不着。闭上眼睛总是能想起那肉嘟嘟的小嘴巴和那做梦都在笑的表情。有牵挂了。 以前我总是不明白,为什么有孩子的人聊自家的孩子能永远说不完,现在一 …

    于 继续阅读

  8. 一个简单的电商规格算法

    电商开发中我们最不可缺少的就是规格参数组合,一种简单算法如下: function generateGroup() { if (func_num_args() <= 1) { return func_get_arg(func_num_args()); } $all = func_get_args(); $first = array_shift($all); $second = array_shift($all); if (c …

    于  PHP, 电商, 算法, 规格 继续阅读

  9. 推荐:超好用的 Laravel Repository 包

    什么是Repository模式,如何使用Repository模式这里就不再啰嗦了,请参见以下几个链接 如何使用 Repository 模式? 关于 Repository 的设计模式 laravel-china.org搜索 我的使用历程原由MVC在如今仍然是流行趋势,但多数框架都只提供基础的MVC架构。 几年前在开发中我们经常会遇到问题Model过于臃肿,写着写着就会变成类似于万能类,最后面的人就真成了接盘侠了。 很不幸我就是其中之一。后来我就一直在思考如何才能让Model看起来清爽,功能更加单一 …

    于  PHP, Repository, laravel 继续阅读

  10. Python: __init__.py 作用

    __init__.py的作用__init__.py主要是用来初始化 Python包(packages)的,它在模块加载最开始运行。 以下目录结构为示例: ├─test │ ├─package_1 │ │ ├─__init__.py │ │ ├─m1.py │ ├─package_2 │ │ ├─__init__.py │ │ └─m2.py │ ├─test.py 其中包含两个包pack …

    于  __init__.py, import, python 继续阅读