原创 Java Optional API
一位智者說過,沒有處理過空指針異常就不算一個真正的 Java 程序員。這當然是開玩笑,但是空指針異常確實是很多程序出錯的源頭。於是,在 Java 8 引入了 java.util.Optional,Optional 用來代表一種 可能有可能沒
原创 基於 NFA 實現正則表達式引擎
回想起第一次看到正則表達式的時候,眼睛裏大概都是 $7^(0^=]W-\^*d+,心裏我是拒絕的。不過在後面的日常工作裏,越來越多地開始使用到正則表達式,正則表達式也逐漸成爲一個很常用的工具。 要掌握一種工具除了瞭解它的用法,瞭解它的原理也
原创 Docker: 容器互訪的三種方式
場景 三個容器 digger-app: 啓動 API 服務,依賴 redis 和 mysql digger-redis: redis 服務 digger-mysql: mysql 服務 我們需要讓 digger-app 容器內運
原创 Jenkins + Docker 簡單部署 node.js 項目
有了前幾篇的基礎後,我們現在已經能 docker 篇: 構建 docker 鏡像 上傳私有倉庫 拉取私有鏡像 啓動容器 jenkins 篇: 配置 pipeline 觸發 pipeline 接下來就可以結合兩者,用 jenkins
原创 Docker: 上傳鏡像至私有倉庫
鏡像可以很方便直接 push 到 docker 的公共倉庫,就好像 github 一樣,但是我們在開發中很多時候都不想公開鏡像文件,這時就需要搭建 docker 的私有倉庫,就好像 gitlab 一樣。 在 上一篇 構建出鏡像後,我們可以部
原创 Docker: 編寫 dockerfile 啓動 node.js 應用
編寫 Dockerfile 以 express 自動創建的目錄爲例,目錄結構如下: ├── /bin │ └── www ├── /node_modules ├── /public ├── /routes ├── /views ├──