原创 開源鏡像管理項目Harbor部署時組件啓動報permission denied錯誤的解決方法

在部署harbor時,有時候會出現如下錯誤: [ERROR] [base.go:248] failed to load app config: open /etc/core/app.conf: permision denied 錯誤很明

原创 docker鏡像管理分析以及retag的實現

在容器化部署的場景下,鏡像管理是一個很重要的部分,畢竟所有的程序都是以鏡像的方式來交付和運行的。 一個標準的鏡像名稱分爲三個部分:鏡像倉庫地址/鏡像存儲庫:鏡像版本,比如http://hub.docker.io/library/redis

原创 springboot項目中根據profile來控制自動配置類的加載

      先說一下背景吧,最近在做個新的項目,主要負責系統用戶權限這部分,說到用戶權限,那麼必不可少的就是用戶會話信息以及上下文數據的保存,一般包括三種: 保存在用戶session中 保存在web容器的上下文中 保存在中間件(redis

原创 使用jvm監控工具(jconsole、jvisualvm)通過jmx遠程連接kubernetes上的java應用

      隨着kubernetes大火,工作中部署應用都上了kubernetes,當java應用出現oom時,就需要通過一些jvm監控工具來輔助分析java的堆棧,查出有內存泄漏的代碼,如果java應用的鏡像中安裝的jdk環境有jmap

原创 alpine鏡像php5安裝memcached、redis擴展的過程

      由於使用了alpine的php5基礎鏡像,在製作應用鏡像的時候,發現有的程序包對memcaced、redis擴展有依賴,所以需要默認開啓memcaced、redis擴展。通過apk search php5-memcached

原创 php5-apache2基礎鏡像配置訪問日誌可以通過docker logs查看

做好php5-apache2基礎鏡像後,發現啓動容器後,訪問php程序,使用docker logs並沒有展示apache2的訪問日誌,用過nginx的鏡像都知道通過docker logs是可以直接查看nginx的訪問日誌的,於是去查看ng

原创 web系統時區不一致導致時間顯示異常的解決方案

       先說一下場景,一般在國內,我們都用的東八區時間,部署系統的時候,如果操作系統的時區也初始化爲Asia/Shanghai,這樣節點上所有的服務時區默認都會跟操作系統保持一致,用戶訪問系統頁面時,展示的時間當然也是不會有問題的,

原创 alpine鏡像安裝php5-apache2環境,自定義的php.ini配置內容不生效問題的定位過程

在製作php5的鏡像過程中,本來打算使用nginx作爲web服務器的,後來發現實際使用過程中,有的php程序包中會存在.htaccess文件,該文件是apache2的資源訪問配置文件,一般用來做請求路徑重寫,如果使用nginx服務器的話,

原创 harbor鏡像倉庫同步401問題解決過程

       項目中出現同步鏡像時報401錯誤,首先想到的就是確認賬號是否真的沒有權限,然後通過docker login 命令使用該賬號登錄鏡像倉庫,也是報了401錯誤。現象很明確,就是客戶端沒有訪問鏡像倉庫的權限,那麼爲啥會出現這種問題

原创 spring-cloud-zuul文件上傳中文名亂碼解決過程

       由於項目中用到了zuul作爲網關,所有的請求都要經過zuul轉發,因此上傳請求也被代理了。經過辛辛苦苦的敲代碼,終於完成了功能開發,上傳非中文名的文件一切都很完美,可是到了中文文件名時,文件服務器收到的請求裏面中文名全部變成

原创 企業級docker registry v2認證服務器搭建

       目前較爲流行的搭建私有鏡像倉庫的方式是通過部署開源項目harbor來實現,該開源項目中帶有鏡像倉庫認證服務,但使用的是自帶的數據庫,也就是說如果要對接到一個已有的系統中,需要將用戶數據以及角色同步到harbor的系統中,雖然

原创 百度富文本編輯器UEditor的改造

      在Java項目中,做內容管理功能時,需要用到富文本編輯器,目前流行的富文本編輯器還是比較多的,因爲項目中用的是百度的UEditor,所以對UEditor使用中的一些問題做個總結吧。      因爲是Java項目所以使用的是隻能