Hi there

When given the choice between being right or being kind, choose kind.

Implementing Database Seeder in Go

Implementing Database Seeder in Go
Previously, I found the Seeder provided by Laravel very convenient. This is where Seeder comes in handy, allowing for quick population of essential system data such as menus, permissions, etc.
Read more →

DevOps - Registering Gitlab Runner

DevOps - Registering Gitlab Runner
Are you still using the traditional manual method of SSH into your production server and executing a series of deployment commands? Try Gitlab Runner, it will free your hands, and you only need to focus on writing code.
Read more →

DevOps - Disabling Gitlab Auto DevOps

DevOps - Disabling Gitlab Auto DevOps
After setting up a new Gitlab server and creating a test project, I noticed that each commit triggers a job that always fails. This not only looks uncomfortable but also affects certain statistics.
Read more →

DevOps - Quick Setup of Gitlab Service

DevOps - Quick Setup of Gitlab Service
For many teams, internal projects are preferred to be hosted in the company’s internal environment. Based on this requirement, today I’ll share how to quickly set up a Gitlab server using Docker.
Read more →

Custom Domain and HTTPS for Github Pages

Custom Domain and HTTPS for Github Pages
If you’re displaying your project documentation or blog on Github Pages and you have your own domain that you want to point to a project Demo or Blog, this article will share how to implement this requirement.
Read more →

Building a Blog with Hexo and Github Pages

Building a Blog with Hexo and Github Pages
I had been using Ghost as my blogging tool for a while. Although its admin interface is quite good, the editing interface for Chinese content is really poor. Eventually, I had to give up Ghost and choose Hexo instead.
Read more →

Setting Up a VPN with Outline

Setting Up a VPN with Outline
This tool comes from a Google team called Jigsaw. Regarding Jigsaw’s mission, Eric Schmidt stated in a Medium post using the Jigsaw account to use technology to tackle the toughest geopolitical challenges, combat violent extremism, thwart online censorship, and reduce threats caused by digital attacks.
Read more →

Iris with Vue History Mode SPA

Iris with Vue History Mode SPA
This article aims to solve the 404 error caused by SPA History routing mode when refreshing frontend route pages, and how to package frontend project resources into executable binary files.
Read more →

Managing Service Configuration

Managing Service Configuration
As systems become more complex and configuration items increase, configuration management becomes cumbersome on one hand, and redeploying after configuration changes becomes equally painful on the other. At this point, a centralized configuration management system is needed to provide unified configuration management and automatic distribution of configuration changes for timely effect.
Read more →

Setting Up a Blog with Ghost

Setting Up a Blog with Ghost
Blogs seem to be declining step by step, with short message platforms like Weibo becoming more popular. The difference is quite obvious - your 2012 blog post might still receive comments in 2014, while even hot topics on Weibo get buried in the flood of information.
Read more →