色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

國產平臺T3如何快速部署電力能源神器-Docker容器

Tronlong創龍科技 ? 2022-02-17 13:52 ? 次閱讀

前 言

隨著電網數據信息化的深入,電網的各種應用服務增長迅速,原有應用服務部署方式面臨著資源利用率低、管理復雜、執行效率低等問題。Docker容器技術集高效、輕量化、虛擬化為一體,為傳統方法的不足找到了解決方案。

1.什么是Docker?

Docker是一個開源的應用容器引擎,讓開發者可打包他們的應用以及依賴包到一個可移植的鏡像中,然后發布到任何流行的Linux或Windows機器上,亦可實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口。使用Docker,可像管理應用程序一樣管理基礎結構。通過利用Docker的快速發布、測試和部署代碼的方法,可顯著減少產品開發時間。

2.使用 Docker 容器的原因

  • 容器沒有來賓操作系統并使用主機的操作系統。因此,他們會在需要時共享相關的庫和資源。
  • 應用程序隔離:如果你想在一臺服務器上運行多個應用程序,將每個應用程序的組件保存在單獨的容器中可以防止依賴管理出現問題。
  • 由于應用程序特定的二進制文件和容器庫在主機內核上運行,因此應用程序的處理和執行速度非常快。
  • 啟動一個容器只需要幾分之一秒。
  • 容器比虛擬機輕量級且速度更快。

本文基于100%國產方案的全志T3/A40i平臺為您講解Docker的安裝及運行測試。

創龍科技SOM-TLT3是一款基于全志科技T3處理器設計的4核ARM Cortex-A7國產工業核心板,每核主頻高達1.2GHz。

核心板通過郵票孔連接方式引出CSI、TVIN、MIPI DSI、TVOUT、RGB DISPLAY、LVDS DISPLAY、GMAC、EMAC、USBSATASDIO、UART、TSC、SPI、TWI等接口,支持雙屏異顯、1080P@45fps H.264視頻硬件編解碼。

核心板采用100%國產元器件方案,并經過專業的PCB Layout和高低溫測試驗證,穩定可靠,可滿足各種工業應用環境。

用戶使用核心板進行二次開發時,僅需專注上層運用,降低了開發難度和時間成本,可快速進行產品方案評估與技術預研。

get?code=ZTlmOTViZjcyZWZlZGViN2U2NTBlMDUwN2U5NjE4MjMsMTY0NTAwMTAzMjE0NQ==

圖 1

get?code=OTA5NmM2OGZmN2EwZWZhMWI0Y2YxZGRlMmNlOTYzMTcsMTY0NTAwMTAzMjE0NQ==

圖 2 T3/A40i評估板

3.Docker架構

Docker使用客戶端——服務器(C/S)體系結構。Docker客戶端與Docker守護進程進行通信,后者執行構建、運行和分發Docker容器的繁重工作。Docker客戶端和守護進程可在同一個系統上運行,亦可將Docker客戶端連接至遠程Docker守護進程。Docker客戶端和守護進程使用REST API、UNIX套接字或網絡接口進行通信。

get?code=MWFmZWVjMzNiYzY2Yzk4YjFkMGQzYWM5OTcwZDY5YTAsMTY0NTAwMTAzMjE0NQ==

圖 3

更多詳情請可參考Docker官網鏈接:https://docs.docker.com/get-started/overview。

4.Docker安裝

2.1安裝方法

  1. 安裝依賴包

打開Ubuntu,確保Ubuntu可正常訪問互聯網,執行如下命令進行安裝Docker依賴包。

Host# sudo apt-get update

get?code=NmI1ZmFlOGMyMjA0NzMxNWQzNWRkNDljMjZiZjMwZWYsMTY0NTAwMTAzMjE0NQ==

圖 4

Host# sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release

get?code=NGM1MmM4ZmI3NDMzZmRkYTc4N2NmNzA0MjE5ODQ4M2UsMTY0NTAwMTAzMjE0NQ==

圖 5

2.添加Docker官方GPG密鑰

Host# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

get?code=YWRlMmMyMTBkMTZiZGNkZTEyNWM3ZWI2YzI5NjVkMDEsMTY0NTAwMTAzMjE0NQ==

圖 6

3.設置Docker Stable存儲庫

Host# echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

get?code=OGUzYWY1MTY4MjhmMjM1YTQyZGMyOGEyN2VkMDUxMDEsMTY0NTAwMTAzMjE0NQ==

圖 7

4.安裝Docker

Host# sudo apt-get update

Host# sudo apt-get install docker-ce

get?code=NTFjZjdmOWI1MTkxOGM1OGI2OTFkY2UxYzNiODRjYzAsMTY0NTAwMTAzMjE0NQ==

圖 8

get?code=NWQ1NGFhNTg3YTExYzIzYWQ1ODdjZWQwZjY3N2Q3ZjYsMTY0NTAwMTAzMjE0NQ==

圖 9

5.驗證Docker

執行如下命令,通過運行Docker自帶的hello-world鏡像來驗證是否已安裝成功。程序運行后,輸出如下內容則表示Docker安裝成功。

Host# sudo docker run hello-world

get?code=ZTAzMjFjNDRkNjJlYzQ2NTUxMmY3ZDEzMjFjMGZkYmYsMTY0NTAwMTAzMjE0NQ==

圖 10

更多參考信息,請查閱官方手冊:https://docs.docker.com/engine/install/ubuntu。

2.2搭建本地鏡像倉庫

Docker用Registry來保存用戶構建的鏡像。Registry分為公共和私有兩種。Docker公司運營的公共Registry叫做Docker Hub,用戶可在Docker Hub注冊賬號,分享并保存自己的鏡像。Docker公司的公共鏡像倉庫(https://hub.docker.com)提供了龐大的鏡像集合供用戶使用。一個Docker Registry中可包含多個倉庫,每個倉庫可包含多個標簽(Tag),每個標簽對應一個鏡像。通常,一個倉庫會包含同一個軟件不同版本的鏡像,而標簽對應該軟件的各個版本。用戶可通過“[<倉庫名>:<標簽>]”的格式來指定具體是某個軟件某個版本的鏡像。如未給出標簽,將以[latest]作為默認標簽。

本次使用的鏡像是registry:2,請執行如下命令自動下載并啟動。

Host# mkdir -p /home/tronlong/docker/myregistry

Host# sudo docker run -d -p 5000:5000 -v /home/tronlong/docker/myregistry:/var/lib/registry registry:2

參數說明:

-d:后臺啟動容器。

-p:將容器的5000端口映射至Ubuntu的5000端口(5000是registry服務端口)。

-v:將容器“/var/lib/registry”目錄映射至Ubuntu的“/home/tronlong/docker/myregistry”,用于存放鏡像數據。

get?code=MTNlN2E5OGUzNTY0MGU1Zjk2NmUwYjY5YWM4NzFlNzQsMTY0NTAwMTAzMjE0NQ==

圖 11

請執行如下命令,查看容器是否已啟動,出現如下內容說明容器已正常啟動。

Host# sudo docker ps

get?code=YzczMTEyNjA0ZmM0ZGRkOGM5ZTgxMmJlZmU0ZGRmMDMsMTY0NTAwMTAzMjE0NQ==

圖 12

請通過瀏覽器訪問“http://192.168.0.84:5000/v2/_catalog”,如返回如下內容則說明registry已經成功啟動,192.168.0.84為Ubuntu的IP。

get?code=MGJhMzhlNTVmY2QyMWUzZGIxNDI2MDg0NmZmOWRkMzUsMTY0NTAwMTAzMjE0NQ==

圖 13

由于剛建立運行,故里面無任何鏡像內容。至此,Docker環境安裝完成。

5.構建鏡像

請在Ubuntu上新建工作目錄“/home/tronlong/docker/dockerfile/”,并將產品資料“4-軟件資料\Linux\Filesystem\”目錄下的文件系統壓縮包rootfs-processor-sdk-04.03.00.05-54428dd3-v2.1-docker.tar.gz和產品資料“4-軟件資料\Demo\tl-linux-application\base-demos\tl_led_flash\bin\”目錄下的可執行文件拷貝至Ubuntu共享目錄下,再執行如下命令拷貝至工作目錄。

Host# mkdir /home/tronlong/docker/dockerfile

Host# cp /mnt/hgfs/SharedFolders/tl_led_flash /home/tronlong/docker/dockerfile/

Host# cp /mnt/hgfs/SharedFolders/rootfs-processor-sdk-04.03.00.05-54428dd3-v2.1-docker.tar.gz /home/tronlong/docker/dockerfile/

get?code=MzRlY2Q3YzM1MWU1MTUxMGRhMTQwMWJhMjU4YmQ1OWEsMTY0NTAwMTAzMjE0NQ==

圖 14

在工作目錄“/home/tronlong/docker/dockerfile/”下,新建Dockerfile文件。

Host# gedit Dockerfile

get?code=M2JmNTVmMTY2ZGQ5NDEzY2RmZTkyOTk5MDZiNTM4NzksMTY0NTAwMTAzMjE0NQ==

圖 15

get?code=MTExZDg2MzM3MjMwNzMwNjBkMTIxYjRkNTU5YzgwZTIsMTY0NTAwMTAzMjE0NQ==

圖 16

Dockerfile文件內容如下:

FROM scratch #基于空的基礎鏡像構建新的鏡像

# Set work directory

WORKDIR /home/root #為CMD、COPY和AND設置工作目錄

# Decompress the file system

ADD rootfs-processor-sdk-04.03.00.05-54428dd3-v2.1-docker.tar.gz / #解壓文件系統

# Copy file to image

COPY tl_led_flash . #拷貝可執行文件至鏡像的"/home/root/"目錄下

# Shell command executed when the container is started

# CMD ["executable","param1","param2"]

CMD ["./tl_led_flash", "-n 3"] #容器啟動時執行的shell命令,此處為執行LED閃爍程序的命令

在Dockerfile文件所在的目錄下執行如下命令,進行構建鏡像。

Host# sudo docker build -t 192.168.0.84:5000/tl_led_flash:v1.0 . //注意命令最后含有“.”

Host# sudo docker images //查看已構建的鏡像

參數說明:

192.168.0.84:Ubuntu的IP地址;

-t:指定鏡像的名字及標簽(name:tag)。

get?code=NTM4NDVkMTNlMmM1ODUyZjQ1ZWZkOTJhZTYwZmZhYmIsMTY0NTAwMTAzMjE0NQ==

圖 17

請執行如下命令,將鏡像推送至本地倉庫Registry。

Host# sudo docker push 192.168.0.84:5000/tl_led_flash:v1.0

get?code=Nzk3ZTMxNmQwMDdjZDk4ODYzOTRhODgyNzU2Mjg4ZGIsMTY0NTAwMTAzMjE0NQ==

圖 18

Docker版本從1.3.X之后,與Docker Registry交互默認使用https,然而前面搭建的私有倉庫僅提供http服務,因此當與私有倉庫交互時將出現上面的錯誤提示。可通過修改“/etc/docker/daemon.json”文件來解決該問題,請執行如下命令,192.168.0.84為Ubuntu的IP。

Host# sudo vi /etc/docker/daemon.json

get?code=ODAxNWI1YTE3OTU4MGEyYzg1ZWRkNDExNDU3MjE0OTksMTY0NTAwMTAzMjE0NQ==

圖 19

請在daemon.json中添加如下配置內容:

{

"insecure-registries": ["192.168.0.84:5000"]

}

執行如下命令,重新啟動Docker、Registry容器(通過指定ID),并重新推送鏡像至本地Registry。

Host# sudo /etc/init.d/docker restart

Host# sudo docker ps -a

Host# sudo docker start 4b0a821ec816 //以查詢得到的ID號為準

Host# sudo docker push 192.168.0.84:5000/tl_led_flash:v1.0

get?code=YzRiMWE3NmJlNWZjNDkxMzZjODllMWYxYjc2ZmYwMGEsMTY0NTAwMTAzMjE0Ng==

圖 20

備注:若出現如下錯誤,可執行"sudo service docker restart"重啟Docker。

get?code=NDRiYmViYmYzOWU1NjdlYzNiMzAxZTY4NWM2ZTlmZWIsMTY0NTAwMTAzMjE0Ng==

圖 21

通過瀏覽器訪問“http://192.168.0.84:5000/v2/_catalog”,即可看到當前倉庫里已有的鏡像。

get?code=OGNjM2M2MmIzNDZlOTFlNDU0NzllNmU5NjI0MjViMGYsMTY0NTAwMTAzMjE0Ng==

圖 22

6.下載鏡像并運行容器

  1. 下載鏡像。

請使用網線將評估板網口連接至路由器,并確保和Ubuntu處于同一網絡下,評估板上電啟動,執行如下命令下載鏡像。

Target# docker pull 192.168.0.84:5000/tl_led_flash:v1.0

Target# docker images

get?code=OTlhNjYwNTlhODE5YmZhYzg4ZTZiZTVlMGI0MDAyMTIsMTY0NTAwMTAzMjE0Ng==

圖 23

若出現如下錯誤,可通過修改“/etc/docker/daemon.json”文件來解決此問題,請執行如下命令。

get?code=NjVhOWVhMTEyNjkzNzU1MTM2MWMxMmUyYmE3NjQwZWUsMTY0NTAwMTAzMjE0Ng==

圖 24

Target# vi /etc/docker/daemon.json

Target# systemctl restart docker.socket //重啟Docker服務

get?code=ZjEzYTRkOWJiYzcwN2UxNzAwM2U2OWI4Y2I3ZGZkODYsMTY0NTAwMTAzMjE0Ng==

圖 25

請在daemon.json中添加如下配置內容:

{

"insecure-registries": ["192.168.0.84:5000"]

}

2.創建并啟動容器。

Target# docker run -d --name tl_led_flash -v /sys/:/sys 0a4ece7276bb

參數說明:

-d: 后臺運行容器;

--name: 為容器指定一個名稱;

-v: 映射卷(將主機的目錄"/sys"映射至容器的"/sys");

0a4ece7276bb:鏡像ID,以實際"IMAGE ID"為準。

get?code=OGRkY2ExNjMzNDJmZmM4NTgxOGVkMWU2MTkxZjc4YTQsMTY0NTAwMTAzMjE0Ng==

圖 26

容器啟動完成后,評估底板的3個用戶LED燈同時閃爍。

備注:若出現如下錯誤,需先創建“/etc/resolv.conf”文件,再進行創建容器操作。

get?code=YmQzYTAyYjkyYTUyN2NkNTQ1YzgxYmRkNDVkMDdlNzUsMTY0NTAwMTAzMjE0Ng==

圖 27

3.容器的基本操作

執行如下命令,查看正在運行的容器并進入容器。

Target# docker ps -a

Target# docker exec -it 085b59f6c76e /bin/bash

參數說明:

-i:以交互模式運行容器,通常與-t同時使用;

-t:為容器重新分配一個偽輸入終端,通常與-i同時使用;

085b59f6c76e:容器ID,以實際“CONTAINER ID”為準;

/bin/bash:在容器內執行“/bin/bash”命令。

get?code=Mzc4YzY1MDQxYzcxOWZlZWE1OWY4YTI3Y2M4N2E3MjQsMTY0NTAwMTAzMjE0Ng==

圖 28

執行如下命令,退出容器。

Bash# exit

get?code=YjI3N2I3ZDdjODY2MWFkNTdiODEwNzM1NWM0MTk4MTQsMTY0NTAwMTAzMjE0Ng==

圖 29

執行如下命令,停止容器。此時,評估底板的3個用戶LED燈不再閃爍。

Target# docker stop 085b59f6c76e

get?code=YmFlYjg3MzBmYjMyZDlmZjU5MDk2MjMxYTgyNTIzZTYsMTY0NTAwMTAzMjE0Ng==

圖 30

執行如下命令,啟動容器。此時,評估底板的3個用戶LED燈同時閃爍。

Target# docker start 085b59f6c76e

get?code=NTVhZThhNjVkMjNlZGExMGI4OGVmOTlkNWQ4ZDA3MTIsMTY0NTAwMTAzMjE0Ng==

圖 31

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5082

    文章

    19104

    瀏覽量

    304812
  • Linux
    +關注

    關注

    87

    文章

    11292

    瀏覽量

    209328
  • LT3
    LT3
    +關注

    關注

    0

    文章

    29

    瀏覽量

    18434
  • 全志
    +關注

    關注

    24

    文章

    247

    瀏覽量

    53119
  • 國產芯片
    +關注

    關注

    2

    文章

    248

    瀏覽量

    29687
收藏 人收藏

    評論

    相關推薦

    docker和k8s部署在云平臺性能要求盤點

    Docker和Kubernetes在云平臺部署時有各自的性能要求。Docker需要足夠的CPU、內存和存儲資源,以及快速的網絡帶寬和優化的鏡
    的頭像 發表于 11-05 10:47 ?177次閱讀

    哇!0.8秒啟動!Linux快速啟動方案分享,全志T113-i國產平臺

    、Linux-RT-5.4.61LinuxSDK:T113_Tina5.0-V1.0(Linux) T113-i快速啟動方案說明為了滿足客戶需求,我司基于全志T113-i
    發表于 08-22 11:54

    ARM平臺實現Docker容器技術

    性價比全志T113-i工業核心板在支持Docker后,其性價比還將進一步提升! 圖2基于T113-i平臺實現Docker
    發表于 07-25 14:36

    ARM平臺實現Docker容器技術

    T113-i工業核心板在支持Docker后,其性價比還將進一步提升!圖2基于T113-i平臺實現Docker
    發表于 07-17 11:05

    工廠電力能耗管理系統功能與應用

    隨著工業化的快速發展,能源消耗問題日益突出,為了精準管理能耗,實現節能減排的目的。工廠電力能耗的管理與優化成為提高生產效率、降低運營成本、實現綠色制造的關鍵環節。 工廠電力能耗管理系統
    的頭像 發表于 07-04 16:36 ?410次閱讀

    工業主板在電力能源中的應用

    工業主板在電力能源領域的應用主要集中在以下幾個方面,利用其高穩定性、耐用性、寬溫工作范圍和長時間高負荷運行的能力,確保電力系統穩定高效、安全運行:
    的頭像 發表于 05-23 16:43 ?465次閱讀
    工業主板在<b class='flag-5'>電力能源</b>中的應用

    基于全志T113-i的Docker容器實現方案

    通過使用Docker,開發人員可以更容易地構建、交付和運行應用程序,同時確保應用程序的一致性及可移植性。它也使得應用程序的部署更加靈活、高效,因為它可以快速地啟動、停止和擴展容器,而不
    發表于 04-19 09:45 ?889次閱讀
    基于全志<b class='flag-5'>T</b>113-i的<b class='flag-5'>Docker</b><b class='flag-5'>容器</b>實現方案

    實測52.4MB/s!全志T3+FPGA的CSI通信案例分享!

    支持4路顯示、GPU以及1080P H.264視頻硬件編解碼。另外,創龍科技已在T3平臺適配國產嵌入式系統翼輝SylixOS,真正實現軟硬件國產化。
    發表于 04-18 10:53

    Docker容器技術的安裝和使用

    通過Docker,開發人員可以更容易地構建、交付和運行應用程序,同時確保應用程序的一致性和可移植性。它也使得應用程序的部署更加靈活和高效,因為它可以快速地啟動、停止和擴展容器,而不會影
    發表于 04-16 11:24 ?320次閱讀
    <b class='flag-5'>Docker</b><b class='flag-5'>容器</b>技術的安裝和使用

    DEKRA德凱誠邀您相約2024中東國際電力能源

    DEKRA德凱誠邀您相約2024中東國際電力能源
    的頭像 發表于 04-15 09:33 ?323次閱讀
    DEKRA德凱誠邀您相約2024中東國際<b class='flag-5'>電力能源</b>展

    ARM平臺實現Docker容器技術

    ,亦可實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口。使用Docker,可像管理應用程序一樣管理基礎結構。通過利用Docker快速發布、測試和
    的頭像 發表于 03-07 13:48 ?793次閱讀
    ARM<b class='flag-5'>平臺</b>實現<b class='flag-5'>Docker</b><b class='flag-5'>容器</b>技術

    TLT507-Docker容器部署方法說明

    TLT507-Docker容器部署方法說明
    的頭像 發表于 01-26 09:49 ?466次閱讀
    TLT507-<b class='flag-5'>Docker</b><b class='flag-5'>容器</b><b class='flag-5'>部署</b>方法說明

    RK3568-Docker容器部署方法說明

    RK3568-Docker容器部署方法說明
    的頭像 發表于 01-22 10:12 ?1370次閱讀
    RK3568-<b class='flag-5'>Docker</b><b class='flag-5'>容器</b><b class='flag-5'>部署</b>方法說明

    綠色醫院建設電力能源管理系統應用分析

    電子發燒友網站提供《綠色醫院建設電力能源管理系統應用分析.docx》資料免費下載
    發表于 01-03 10:30 ?0次下載
    主站蜘蛛池模板: 黑人操白逼| 日日摸夜添夜夜夜添高潮| 乌克兰10一12x video| 18岁男人女人插孔| 国产人妻人伦精品久久无码| 免费视频亚洲| 一个人的免费高清影院| 国产 亚洲 中文字幕 在线 | 精品少妇高潮蜜臀涩涩AV| 日韩熟女精品一区二区三区| 在线观看a视频| 国产在线视频分类精品| 色欲国产麻豆精品AV免费| 99久久无码一区人妻A片蜜| 久草在线新是免费视频| 亚州日韩精品AV片无码中文| 波多久久亚洲精品AV无码| 蜜桃传媒星空传媒在线播放| 野草观看免费高清视频| 国产乱色伦影片在线观看| 日日啪在线影院百度| 99视频福利| 蜜臀AV久久国产午夜福利软件| 亚洲三级在线看| 国产香蕉视频在线播放| 特黄AAAAAAA片免费视频| 不分昼夜H1V3| 美女脱了内裤张开腿让男人桶到爽| 亚洲综合AV在线在线播放| 国产中文视频无码成人精品| 四虎永久在线精品国产| 东京热一本无码av| 日本另类xxxx| 把腿张开再深点好爽宝贝动态图| 男女啪啪久久精品亚洲A| 91热久久免费频精品动漫99| 久久久久久久久a免费| 在线观看成人3d动漫入口| 久草色视频| 夜夜躁婷婷AV蜜桃视频| 寂寞夜晚视频高清观看免费|