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

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

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

3天內(nèi)不再提示

Docker容器部署-以TI AM335x平臺為例

Tronlong創(chuàng)龍科技 ? 2021-12-20 15:16 ? 次閱讀

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

Docker容器適用于TI AM335x、AM437x、AM570x、AM5728等平臺,本文基于TI AM3352/54/59平臺為您講解Docker的安裝及運行測試。


點擊圖片/圖注即可查看該產(chǎn)品資料↓↓↓

pYYBAGHAKeKAVTh7AAeBGDly7bA427.png

圖 1


01

Docker架構


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

poYBAGHAKeKAeBIrAAS1VEB19Yg033.png

圖 2

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


02

Docker安裝


2.1安裝方法

(1)安裝依賴包

打開Ubuntu,確保Ubuntu可正常訪問互聯(lián)網(wǎng),執(zhí)行如下命令進行安裝Docker依賴包。

Host# sudo apt-get update

poYBAGHAKeGAf8xfAACLgEudyi4621.png

圖 3

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

pYYBAGHAKeGAR_AFAADBVkJo-w4074.png

圖 4

(2)添加Docker官方GPG密鑰

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

af7ffdf4-5e82-11ec-a27f-dac502259ad0.png

圖 5

(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

afc16f8c-5e82-11ec-a27f-dac502259ad0.png

圖 6

(4)安裝Docker

Host# sudo apt-get update

Host# sudo apt-get install docker-ce

afe77cb8-5e82-11ec-a27f-dac502259ad0.png

圖 7

b035fc08-5e82-11ec-a27f-dac502259ad0.png

圖 8

(5)驗證Docker

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

Host# sudo docker run hello-world

b06add42-5e82-11ec-a27f-dac502259ad0.png

圖 9

更多參考信息,請查閱官方手冊: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,請執(zhí)行如下命令自動下載并啟動。

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

參數(shù)說明:

-d:后臺啟動容器。

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

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

b0a9258e-5e82-11ec-a27f-dac502259ad0.png

圖 10

請執(zhí)行如下命令,查看容器是否已啟動,出現(xiàn)如下內(nèi)容說明容器已正常啟動。

Host# sudo docker ps

b0e79864-5e82-11ec-a27f-dac502259ad0.png

圖 11

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

b10959d6-5e82-11ec-a27f-dac502259ad0.png

圖 12

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


03

構建鏡像

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

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/

b1295b5a-5e82-11ec-a27f-dac502259ad0.png

圖 13

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

Host# gedit Dockerfile

b17e7b58-5e82-11ec-a27f-dac502259ad0.png

圖 14

b1ad61c0-5e82-11ec-a27f-dac502259ad0.png

圖 15

Dockerfile文件內(nèi)容如下:

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 /#解壓文件系統(tǒng)

# Copy file to image

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

# Shell command executed when the container is started

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

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

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

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

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


參數(shù)說明:

192.168.0.84:Ubuntu的IP地址;

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

b1db1d7c-5e82-11ec-a27f-dac502259ad0.png

圖 16

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

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

b231884c-5e82-11ec-a27f-dac502259ad0.png

圖 17

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

Host# sudovi/etc/docker/daemon.json

b284a6e4-5e82-11ec-a27f-dac502259ad0.png

圖 18

請在daemon.json中添加如下配置內(nèi)容:

{

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

}

執(zhí)行如下命令,重新啟動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

b2b0d728-5e82-11ec-a27f-dac502259ad0.png

圖 19

備注:若出現(xiàn)如下錯誤,可執(zhí)行"sudo service docker restart"重啟Docker。

b2e12630-5e82-11ec-a27f-dac502259ad0.png

圖 20

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

b33abb46-5e82-11ec-a27f-dac502259ad0.png

圖 21


04

下載鏡像并運行容器

(1)下載鏡像。

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

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

Target# docker images

b353b74a-5e82-11ec-a27f-dac502259ad0.png

圖 22

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

b3863b20-5e82-11ec-a27f-dac502259ad0.png

圖 23

Target# vi /etc/docker/daemon.json

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

b3b262fe-5e82-11ec-a27f-dac502259ad0.png

圖24

請在daemon.json中添加如下配置內(nèi)容:

{

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

}

(2)創(chuàng)建并啟動容器。

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


參數(shù)說明:

-d: 后臺運行容器;

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

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

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

b3e45fc0-5e82-11ec-a27f-dac502259ad0.png

圖 25

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

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

b433ed88-5e82-11ec-a27f-dac502259ad0.png

圖 26

(3)容器的基本操作

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

Target# dockerps -a

Target# docker exec -it085b59f6c76e/bin/bash


參數(shù)說明:

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

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

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

/bin/bash:在容器內(nèi)執(zhí)行“/bin/bash”命令。

b46c4502-5e82-11ec-a27f-dac502259ad0.png

圖 27

執(zhí)行如下命令,退出容器。

Bash# exit

b4995182-5e82-11ec-a27f-dac502259ad0.png

圖 28

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

Target# docker stop 085b59f6c76e

b4c26d56-5e82-11ec-a27f-dac502259ad0.png

圖 29

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

Target# docker start085b59f6c76e

b4fe0c3a-5e82-11ec-a27f-dac502259ad0.png

圖 30

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

    關注

    5103

    文章

    19268

    瀏覽量

    310016
  • Linux
    +關注

    關注

    87

    文章

    11373

    瀏覽量

    211293
  • 硬件開發(fā)

    關注

    3

    文章

    160

    瀏覽量

    24442
收藏 人收藏

    評論

    相關推薦

    am335x開發(fā)板能否支持Vxworks操作系統(tǒng)的移植?

    請問在TI官網(wǎng)購買的am335x開發(fā)板能否支持Vxworks操作系統(tǒng)的移植,并進行內(nèi)核裁剪和BSP開發(fā),是否提供開源的BSP開發(fā)源碼
    發(fā)表于 02-18 07:02

    基于 Docker 與 Jenkins 實現(xiàn)自動化部署

    優(yōu)化, Docker 容器化應用與 Jenkins 自動化流水線提供了理想的運行環(huán)境。無論是快速構建、測試還是部署,F(xiàn)lexus X 都能
    的頭像 發(fā)表于 01-07 17:25 ?277次閱讀
    基于 <b class='flag-5'>Docker</b> 與 Jenkins 實現(xiàn)自動化<b class='flag-5'>部署</b>

    AM335x和AMIC110 Sitara?處理器技術參考手冊

    電子發(fā)燒友網(wǎng)站提供《AM335x和AMIC110 Sitara?處理器技術參考手冊.pdf》資料免費下載
    發(fā)表于 11-14 15:07 ?5次下載
    <b class='flag-5'>AM335x</b>和AMIC110 Sitara?處理器技術參考手冊

    am335x evm板音頻播放正常,但是無法錄音,怎么解決?

    am335x evm板音頻播放正常,但是無法錄音。使用amixer各種配置測試都不行。錄的音頻很小聲而且聽不清,只有對麥克風吹氣才能聽到吹氣的聲音。聽不到說話的聲音。會不會是硬件問題?參數(shù)配置配置需要怎么配置?
    發(fā)表于 10-31 06:45

    適用于AM335x TRF7970A的neard(Linux NFC)構建說明

    電子發(fā)燒友網(wǎng)站提供《適用于AM335x TRF7970A的neard(Linux NFC)構建說明.pdf》資料免費下載
    發(fā)表于 10-26 11:00 ?0次下載
    適用于<b class='flag-5'>AM335x</b> TRF7970A的neard(Linux NFC)構建說明

    AM335x功耗估算工具

    電子發(fā)燒友網(wǎng)站提供《AM335x功耗估算工具.pdf》資料免費下載
    發(fā)表于 10-12 11:46 ?0次下載
    <b class='flag-5'>AM335x</b>功耗估算工具

    PLC應用中的AM335x可靠性注意事項

    電子發(fā)燒友網(wǎng)站提供《PLC應用中的AM335x可靠性注意事項.pdf》資料免費下載
    發(fā)表于 10-12 11:33 ?0次下載
    PLC應用中的<b class='flag-5'>AM335x</b>可靠性注意事項

    AM335x硬件設計指南

    電子發(fā)燒友網(wǎng)站提供《AM335x硬件設計指南.pdf》資料免費下載
    發(fā)表于 09-19 11:05 ?1次下載
    <b class='flag-5'>AM335x</b>硬件設計指南

    AM335xAM43xx Sitara處理器USB布局指南

    電子發(fā)燒友網(wǎng)站提供《AM335xAM43xx Sitara處理器USB布局指南.pdf》資料免費下載
    發(fā)表于 09-19 11:05 ?0次下載
    <b class='flag-5'>AM335x</b>和<b class='flag-5'>AM</b>43xx Sitara處理器USB布局指南

    AM335x原理圖核對表

    電子發(fā)燒友網(wǎng)站提供《AM335x原理圖核對表.pdf》資料免費下載
    發(fā)表于 09-19 11:03 ?0次下載
    <b class='flag-5'>AM335x</b>原理圖核對表

    AM335x Sitara?處理器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《AM335x Sitara?處理器數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 08-08 13:07 ?0次下載
    <b class='flag-5'>AM335x</b> Sitara?處理器數(shù)據(jù)表

    ARM平臺實現(xiàn)Docker容器技術

    性價比全志T113-i工業(yè)核心板在支持Docker后,其性價比還將進一步提升! 圖2基于T113-i平臺實現(xiàn)Docker容器技術 如下為基于全志T113-i工業(yè)
    發(fā)表于 07-25 14:36

    ARM平臺實現(xiàn)Docker容器技術

    T113-i工業(yè)核心板在支持Docker后,其性價比還將進一步提升!圖2基于T113-i平臺實現(xiàn)Docker容器技術 如下為基于全志T113-i工業(yè)
    發(fā)表于 07-17 11:05

    GPMC并口多通道AD采集案例,基于TI AM62x四核處理器平臺

    GPMC并口簡介 GPMC(General Purpose Memory Controller)是TI處理器特有的通用存儲器控制器接口,是AM62xAM64xAM437x
    的頭像 發(fā)表于 07-09 10:58 ?547次閱讀
    GPMC并口多通道AD采集案例,基于<b class='flag-5'>TI</b> <b class='flag-5'>AM62x</b>四核處理器<b class='flag-5'>平臺</b>!

    沒搶到?米爾AM62x開發(fā)板限量5折又來了

    AM62x替代AM335x處理器上次米爾AM62x開發(fā)板的5折活動沒搶到,今天又來了!!!精彩不容錯過,限量30PCSSitara作為TI處理器經(jīng)典系列,曾推出眾多優(yōu)秀處理器型號(如
    的頭像 發(fā)表于 05-17 08:01 ?614次閱讀
    沒搶到?米爾<b class='flag-5'>AM62x</b>開發(fā)板限量5折又來了
    主站蜘蛛池模板: 成人免费肉动漫无遮网站 | 亚洲色无码播放 | 捏揉舔水插按摩师 | 蜜桃视频无码区在线观看 | 亚洲视频在线观 | 免费的好黄的漫画 | 国产1769一七六九视频在线 | 国产精品69人妻无码久久 | 99精品国产免费久久久久久下载 | 久久精品综合电影 | 小雪奶水涨翁工帮吸的推荐语录 | 亚洲成片在线看 | 久拍国产在线观看 | 日韩欧美中文字幕在线 | 日本无码专区亚洲麻豆 | 忘忧草在线影院www日本 | 久久久无码精品亚洲日韩按摩 | 中文字幕成人免费高清在线 | chinese东北夫妻video | 国产成人ae在线观看网站站 | 甜性涩爱dvd | av在线观看网站免费 | 中文字幕日本在线mv视频精品 | 一本道手机无码在线看 | 9966在线观看免费高清电影 | 中文字AV字幕在线观看 | 妻子撸av中文字幕 | 一色屋精品亚洲香蕉网站 | 国产福利视频第一导航 | 九九九精品国产在线 | 国产精品久久人妻无码网站一区L | 国产二级一片内射视频播放 | 成人欧美尽粗二区三区AV | 小776 论坛 | 手机在线免费 | 亚洲国产精品久久精品成人网站 | 久久99re66热这里只有精品 | 高h 大尺度纯肉 np快穿 | 亚洲激情网站 | 交video| 小黄鸭YELLOWDUCK7596 |