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
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...