原创 使用dockerfile 搭建django系統(nginx+redis+mongodb+celery)

背景 有需求需要對django系統進行docker化,以達到靈活部署和容災。該系統基於django 2.2版本開發,數據庫採用mongodb,服務器使用nginx,因系統有部分異步任務,異步任務則採用clelery+redis實

原创 docker login Harbor時報錯403 Forbidden

背景 在本地搭建了harbor後,在進行了相關配置後,還是報錯:Error response from daemon: login attempt to http://10.xx.xx.xx:8000/v2/ failed wi

原创 將mongoDB數據轉化爲json---Python實現

前提背景 我們知道,mongoDB數據庫表中的一條數據(document)在呈現的時候,很像json。在平時的使用中,有時候會有這樣的需求:我們需要將數據庫中的數據讀出來,並將其傳送(例如ajax請求)到前端頁面去解析呈現。顯然

原创 Docker下搭建mongodb副本集

背景 有需求需要對mongodb做一個容災備份。根據官網,發現mongodb最新版本(4.0)已經拋棄了主從模式而採用副本集進行容災。副本集的優勢在於:”有自動故障轉移和恢復特性,其任意節點都可以是主節點,並能實現讀寫分離,提供

原创 Go設置代理

注意,下面的步驟適合於1.13版本以上的Go環境 步驟 在安裝完Go環境後,在GOPATH的src目錄下創建 goland.org/x/ 目錄,進入此目錄,執行命令: $ git clone https://github.co

原创 利用python 查詢操作JIRA中的issues

背景描述 最近有個需求是獲取某些符合條件的jira數據,在統計後使用echarts可視化度量出來。後端代碼打算用 Python實現 問題解決 這裏着重說下後臺獲取jira數據的代碼。python有一個非常好用的jira操作庫j

原创 基於grpc的流式方式實現雙向通訊(python)

grpc介紹 grpc是谷歌開源的一套基於rpc實現的通訊框架(官網有更完整的定義)。在搞懂grpc之前,首先要弄懂rpc是什麼。下面是自己理解的rpc定義,若有不對,望指出: rpc官方稱爲 遠程過程調用 。我這裏理解爲遠程函

原创 Linux下MySQL8.0修改初始密碼

背景 在安裝完MySQL後,使用如下命令 sudo service mysql start 啓動mysql服務後,再使用登陸命令 mysql -u root -p 時根據提示,無論嘗試輸入什麼密碼都報錯。看網上大多的都是先在配

原创 Go切片中兩個冒號的理解

先看下面的一段代碼: package main import "fmt" func main() { var numbers4 = [...]int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

原创 python 裝飾器基本原理

定義 關於python中裝飾器的定義,我們這裏參考廖雪峯大神的python3教程中的定義:在某個函數(代碼)運行期間,在不更改該函數的功能下,動態給該函數添加功能的方式,我們稱之爲“裝飾器”。從定義中看出,這個裝飾器勢必要在實現

原创 Harbor使用自簽名證書配置https認證

背景 我們知道Harbor是用來存儲docker鏡像的倉庫系統。目前docker從鏡像倉庫pull或push鏡像都是採用https形式的(例如官方的Docker hub),故有必要將Harbor配置成https訪問,並使其他Do

原创 Redis HyperLogLog學習記錄

說明 之前在說Redis集合數據結構的時候,我們知道集合中存儲的是互不相同的元素,它的SADD命令用來添加元素,SCARD命令用來獲取集合中元素的數量,故我們可以利用從該命令製作一個“唯一計數器”。例如記錄一個網站的ip訪問量。但

原创 Redis集合學習記錄

Redis的集合是一種無序的結構,它之中存儲的是一些互不相同的元素,它不像Redis列表結構那樣有序排列,故它也沒有索引取值、隊列、棧的功能。 命令 SADD SADD set element [element ...] 將一個

原创 Redis有序集合學習

說明 有序集合顧名思義具備了“有序”和“集合”的兩種特性,它在存儲元素成員的時候,會給每個成員設置一個分值,這些成員會自動按照分值的大小進行排列。其中分值除了是數字以外還可以是“+inf”(無窮大)和“-inf”(無窮小)。正因爲

原创 Redis列表學習記錄

概括 redis列表是一種有序的線性結構,它之中的數據可以重複。正是因爲它是有序的,所以它能作爲一些常用的數據結構,如隊列、棧等。也能進行一些相應的操作,比如遍歷、索引取值等。 操作命令 推入、取出操作:LPUSH、RPUSH、L