CentOS中實現基於Docker部署BI數據分析

来源:https://www.cnblogs.com/helong-123/archive/2022/06/29/16423424.html
-Advertisement-
Play Games

鏡像下載、功能變數名稱解析、時間同步請點擊 阿裡雲開源鏡像站 作為一個專業小白,咱啥都不懂。 linux不懂,docker不懂。 但是我還想要完成領導下達的任務:在linux中安裝docker後部署數據可視化工具。作為一名敬業 的打工人擺爛不可以,躺平不可以,弱小,無助,可憐中。。這能力,這要去,要不直接散 ...


鏡像下載、功能變數名稱解析、時間同步請點擊 阿裡雲開源鏡像站

作為一個專業小白,咱啥都不懂。

linux不懂,docker不懂。

但是我還想要完成領導下達的任務:在linux中安裝docker後部署數據可視化工具。作為一名敬業 的打工人擺爛不可以,躺平不可以,弱小,無助,可憐中。。這能力,這要去,要不直接散伙算了。但是,沒想到,我們還是有解決辦法。

為了降低扣獎金的風險,我還是我,我要完成這功能。

於是,以下是我的學習歷程,於是我又成長了。

file

各個概念逐一掃清

先瞭解CentOS

不搜不知道,一搜嚇一跳,原來CentOS是這樣的,它可謂是開發人員最喜愛的 Linux系統之一了,它是免費且開源的、可以重新分發的開源操作系統,是一個很穩定的,可預測的,且可管理的和復現的平臺,自2004年3月以來,CentOS Linux一直是社區驅動的開源項目,旨在與RHEL在功能上相容。很多情況我們會選擇使用CentOS 構建伺服器,保證伺服器的穩定高效,相當不錯了。

簡單說 ,它是一款可靠的伺服器操作系統。

Docker又是做什麼的?

仿佛全世界都在談論 Docker,跟電腦行業沾點邊的,不知道Docker是做什麼的,都不好意思回家過年,怕被親戚追問:"你會Docker嗎?給我也做一個"

file

行話說:Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的鏡像中,然後發佈到任何流行的 Linux或Windows操作系統的機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。

給親戚解釋:來自於知乎的通俗解釋:

Docker的思想來自於 集裝箱,集裝箱解決了什麼問題?在一艘大船上,可以把貨物規整的擺放起來。並且各種各樣的貨物被集裝箱標準化了,集裝箱和集裝箱之間不會互相影響。那麼我就不需要專門運送水果的船和專門運送化學品的船了。只要這些貨物在集裝箱里封裝的好好的,那我就可以用一艘大船把他們都運走。

file

理論都瞭解差不多了,那我該開始動手了

首先明確我們要部署的工具是BI是支持在CentOS 部署,且支持Docker鏡像部署的。

OK,條件滿足

話不多說直接上操作流程,建議大家直接收藏:

CentOS中實現在Docker部署.Net Core BI 項目

我們開始整:

第一步:

安裝系統:CentOS 8 ,系統鏡像地址:下載地址

第二步:

進入系統,進入下麵的命令行,對於小白來說,第一次進來找不見命令行很正常,因為開始的時候,我也找不見。因為這裡是需要用管理員許可權進行安裝的,所以進入命令行後,要輸入 su 後回車。然後提示輸入密碼,進入root賬號。

進入系統後,界面上會彈出一個更新插件庫的一個框,點擊更新。老手自行命令,這裡面對新手,否則會yum無法使用。這個也可以通過命令安裝,但是這個步驟比較麻煩。

file

第三步:

安裝docker準備。

  • 先更新一下
yum -y update

centos8預設使用podman代替docker,所以需要containerd.io,那我們就安裝一下就好了

yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
  • 安裝一些其他依賴
yum install -y yum-utils device-mapper-persistent-data lvm2

--配置源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

或者

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 安裝docker
yum install -y docker-ce
  • 啟動docker
systemctl start docker
  • 檢查docker狀態
docker --version

如果出來docker 版本號了,那麼說明這一步就安裝好了

第四步:

安裝wyn,依次執行下麵的命令。

sudo docker pull grapecitycn/wyn-enterprise

sudo docker run --name wyn -p 51980:51980 -d grapecitycn/wyn-enterprise

恭喜你,現在我們已經將wyn安裝好了。可以通過 http://localhost:51980/ 來啟動了。但是問題來了,啟動不起來。

因為我們還有第五步需要再安裝一下,所以暫時不要激動:

第五步:

執行一下: docker run -d -p 51980 httpd

好了,這一步已經99%已經完成了。是不是覺得特別簡單呢?但是這個問題在我第一次安裝的時候,整了七八個小時。

file

自定義Wyn的docker鏡像

1.導出自定義的文檔和配置。

首先,使用Wyn官方提供的docker鏡像來創建一個自己的docker容器。

例如:sudo docker run –name wyn -p 51980:51980 -d grapecitycn/wyn-enterprise:5.0.00312.0

訪問docker容器中運行的Wyn應用程式。

此時,可以根據自己的需要來對Wyn系統進行配置,比如替換登錄頁面的背景圖片和LOGO,替換系統左上角顯示的LOGO,以及替換瀏覽器tag頁上面顯示的LOGO。還可以根據自己的需要創建一些示例文檔。

file

file

file

file

Admin Portal中導出你需要的文檔以及配置。

file

導出後,為一個壓縮包。

file

2.製作docker鏡像

  • 準備一臺Linux機器,把文件夾custom-wyn拷貝到這台機器上面去。
  • 把上步驟中導出的壓縮文件重命名為sample_files.zip,並拷貝到目錄custom-wyn/sample_files下麵。
  • 如果需要在自定義的docker鏡像中內置字體,請把準備好的字體文件拷貝到目錄custom-wyn/custom_fonts下。
  • 根據自己的需要,修改dockerfile文件中docker鏡像wyn-enterprise的tag名稱。
  • 參照腳本文件push-docker-image.sh中的內容,製作並且上傳docker鏡像到docker倉庫中。

3.拉取docker鏡像進行驗證

  • 拉取步驟2中創建好的docker鏡像,並使用該鏡像創建一個docker容器。
  • 訪問該docker容器中運行的Wyn應用併進行驗證。

雖然研究的過程是很痛苦的,但是掌握了這個技能,還是覺得心滿意足的。以上是小白的學習成長,希望獻給和我一樣的小白同學們。

本文轉自:https://blog.51cto.com/powertoolsteam/5418508


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • C#開發上位機應用的一些選擇 如果你不想看介紹,可以直接跳到優雅開發示例那裡。 1. WASDK(WinUI 3) Windows 應用 SDK 是一組新的開發人員組件和工具,它們代表著 Windows 應用開發平臺的下一步發展。 Windows 應用 SDK 提供一組統一的 API 和工具,可供從 ...
  • Hash 數據結構 使用 ziplist 當同時滿足下麵兩個條件時,使用 ziplist 存儲數據 元素個數少於512個 (hash-max-ziplist-entries: 512) 每個元素長度小於64位元組 (hash-max-ziplist-value: 64) 不滿足上面的條件, 使用 ha ...
  • MediaWPF 基於 .NET 6 實現視頻硬解碼渲染Demo(無空域問題) 代碼實現僅供學習參考 本項目視頻渲染通過顯卡進行視頻解碼,CPU幾乎不參與工作,並且不存在令人煩躁的空域問題。 在播放攝像頭多路視頻或高解析度、高幀率視頻時可以極大發揮顯卡性能(我認為該項目做到了這一點)。 播放4k、8 ...
  • 前言 上一篇我們講了使用HttpClient的方式調用,那麼如果我們現在需要更換為通過dapr實現服務調用,我們需要做哪些事情呢? Caller.Dapr 入門 如果我們的項目原本使用的是Caller.HttpClient,現在希望改為使用Caller.Dapr,那麼我們需要做什麼呢? 改造Call ...
  • List 數據結構 Redis 3.2 前,使用 壓縮列表zipList 或 雙向鏈表linkedList 當同時滿足下麵兩個條件時,使用zipList存儲數據 list保存的每個元素長度小於64位元組 列表中數據個數少於512個 Redis 3.2 及之後的底層實現方式: quickList qui ...
  • 中移OneOS開發板學習入門 (做為一個專業的點燈愛好者,學習任何開發板開始前都是先找好學習資料,然後在學習OneOS的內核部分,外設部分,系統組件等) OneOS OneOS是中國移動針對物聯網領域推出的輕量級操作系統,具有可裁剪、跨平臺、低功耗、高安全等特點,支持ARM Cortex-A和 Co ...
  • 備份資料庫 問題描述: ​ 我們用的是mysql,以今天遇到的情況為例,我們是在兩台伺服器上要搭相同的平臺,部署完成後頁面報錯,發現是資料庫的問題,我們打開資料庫查看,確實資料庫中少建一個wind資料庫,但是我們沒有建這個資料庫的腳本,資料庫裡面涉及到很多表,很複雜,於是採用linux備份的方法,成 ...
  • 通過 hosts文件配置本地功能變數名稱 概念 DNS: 功能變數名稱系統(Domain Name System),是互聯網的一項服務。它作為將功能變數名稱和IP地址相互映射的一個分散式資料庫,能夠使人更方便地訪問互聯網。 將功能變數名稱映射到對應的IP地址。 互聯網通過IP定位瀏覽器建立連接,但是我們不易區別IP,為了方便用戶辨 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...