chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

Docker容器部署-以TI AM335x平臺(tái)為例

Tronlong創(chuàng)龍科技 ? 2021-12-20 15:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

Docker容器適用于TI AM335x、AM437x、AM570x、AM5728等平臺(tái),本文基于TI AM3352/54/59平臺(tái)為您講解Docker的安裝及運(yùn)行測(cè)試。


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

pYYBAGHAKeKAVTh7AAeBGDly7bA427.png

圖 1


01

Docker架構(gòu)


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

poYBAGHAKeKAeBIrAAS1VEB19Yg033.png

圖 2

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


02

Docker安裝


2.1安裝方法

(1)安裝依賴包

打開Ubuntu,確保Ubuntu可正常訪問互聯(lián)網(wǎng),執(zhí)行如下命令進(jìn)行安裝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)設(shè)置Docker Stable存儲(chǔ)庫

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)驗(yàn)證Docker

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

Host# sudo docker run hello-world

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

圖 9

更多參考信息,請(qǐng)查閱官方手冊(cè):https://docs.docker.com/engine/install/ubuntu。

2.2搭建本地鏡像倉庫

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

本次使用的鏡像是registry:2,請(qǐng)執(zhí)行如下命令自動(dòng)下載并啟動(dòng)。

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:后臺(tái)啟動(dòng)容器。

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

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

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

圖 10

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

Host# sudo docker ps

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

圖 11

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

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

圖 12

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


03

構(gòu)建鏡像

請(qǐng)?jiān)赨buntu上新建工作目錄“/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#基于空的基礎(chǔ)鏡像構(gòu)建新的鏡像

# Set work directory

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

# 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"]#容器啟動(dòng)時(shí)執(zhí)行的shell命令,此處為執(zhí)行LED閃爍程序的命令

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

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

Host# sudo docker images//查看已構(gòu)建的鏡像


參數(shù)說明:

192.168.0.84:Ubuntu的IP地址;

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

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

圖 16

請(qǐng)執(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交互默認(rèn)使用https,然而前面搭建的私有倉庫僅提供http服務(wù),因此當(dāng)與私有倉庫交互時(shí)將出現(xiàn)上面的錯(cuò)誤提示??赏ㄟ^修改“/etc/docker/daemon.json”文件來解決該問題,請(qǐng)執(zhí)行如下命令,192.168.0.84為Ubuntu的IP。

Host# sudovi/etc/docker/daemon.json

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

圖 18

請(qǐng)?jiān)赿aemon.json中添加如下配置內(nèi)容:

{

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

}

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

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

Host# sudo docker ps -a

Host# sudo docker start 4b0a821ec816//以查詢得到的ID號(hào)為準(zhǔn)

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

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

圖 19

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

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

圖 20

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

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

圖 21


04

下載鏡像并運(yùn)行容器

(1)下載鏡像。

請(qǐng)使用網(wǎng)線將評(píng)估板網(wǎng)口連接至路由器,并確保和Ubuntu處于同一網(wǎng)絡(luò)下,評(píng)估板上電啟動(dò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)如下錯(cuò)誤,可通過修改“/etc/docker/daemon.json”文件來解決此問題,請(qǐng)執(zhí)行如下命令。

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

圖 23

Target# vi /etc/docker/daemon.json

Target# systemctl restart docker.socket//重啟Docker服務(wù)

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

圖24

請(qǐng)?jiān)赿aemon.json中添加如下配置內(nèi)容:

{

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

}

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

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


參數(shù)說明:

-d: 后臺(tái)運(yùn)行容器;

--name: 為容器指定一個(gè)名稱;

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

0a4ece7276bb:鏡像ID,以實(shí)際"IMAGE ID"為準(zhǔn)。

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

圖 25

容器啟動(dòng)完成后,評(píng)估底板的3個(gè)用戶LED燈同時(shí)閃爍。

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

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

圖 26

(3)容器的基本操作

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

Target# dockerps -a

Target# docker exec -it085b59f6c76e/bin/bash


參數(shù)說明:

-i:以交互模式運(yùn)行容器,通常與-t同時(shí)使用;

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

085b59f6c76e:容器ID,以實(shí)際“CONTAINER ID”為準(zhǔn);

/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í)行如下命令,停止容器。此時(shí),評(píng)估底板的3個(gè)用戶LED燈不再閃爍。

Target# docker stop 085b59f6c76e

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

圖 29

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

Target# docker start085b59f6c76e

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

圖 30

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

    關(guān)注

    5186

    文章

    20132

    瀏覽量

    328299
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11622

    瀏覽量

    217815
  • 硬件開發(fā)
    +關(guān)注

    關(guān)注

    3

    文章

    184

    瀏覽量

    25076
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—Docker容器部署方法說明

    ,鏡像下載與容器運(yùn)行(含單個(gè) / 多個(gè)容器操作),還提及磁盤占用資源查看方法,適配 Debian 11 等環(huán)境,評(píng)估板 Docker 應(yīng)用部署
    的頭像 發(fā)表于 10-22 17:21 ?527次閱讀
    創(chuàng)龍 瑞芯微 RK3588 國產(chǎn)2.4GHz八核 工業(yè)開發(fā)板—<b class='flag-5'>Docker</b><b class='flag-5'>容器</b><b class='flag-5'>部署</b>方法說明

    國產(chǎn)!全志T113-i 雙核Cortex-A7@1.2GHz 工業(yè)開發(fā)板—Docker容器部署方法說明

    本指導(dǎo)文檔主要演示Docker容器部署的方法,并基于Docker運(yùn)行l(wèi)ed_flash例程。
    的頭像 發(fā)表于 08-06 15:55 ?274次閱讀
    國產(chǎn)!全志T113-i 雙核Cortex-A7@1.2GHz 工業(yè)開發(fā)板—<b class='flag-5'>Docker</b><b class='flag-5'>容器</b><b class='flag-5'>部署</b>方法說明

    Docker容器安全攻防實(shí)戰(zhàn)案例

    在云原生時(shí)代,Docker已成為現(xiàn)代應(yīng)用部署的基石。然而,容器化帶來便利的同時(shí),也引入了新的安全挑戰(zhàn)。作為一名在生產(chǎn)環(huán)境中管理過數(shù)千個(gè)容器的運(yùn)維工程師,我將通過真實(shí)的攻防實(shí)戰(zhàn)案例,帶你
    的頭像 發(fā)表于 08-05 09:52 ?980次閱讀

    干貨分享 | RK3588 Ubuntu系統(tǒng)Docker容器使用指南

    前言:在瑞芯微RK3588高性能AIoT平臺(tái)上運(yùn)行Ubuntu系統(tǒng)時(shí),Docker容器技術(shù)能極大提升開發(fā)部署效率。通過輕量級(jí)虛擬化實(shí)現(xiàn)環(huán)境隔離與快速遷移,本文將從零開始詳解RK3588
    的頭像 發(fā)表于 06-27 12:01 ?3072次閱讀
    干貨分享 | RK3588 Ubuntu系統(tǒng)<b class='flag-5'>Docker</b><b class='flag-5'>容器</b>使用指南

    如何使用Docker部署大模型

    隨著深度學(xué)習(xí)和大模型的快速發(fā)展,如何高效地部署這些模型成為了一個(gè)重要的挑戰(zhàn)。Docker 作為一種輕量級(jí)的容器化技術(shù),能夠?qū)⒛P图捌湟蕾嚟h(huán)境打包成一個(gè)可移植的容器,極大地簡(jiǎn)化了
    的頭像 發(fā)表于 05-24 16:39 ?772次閱讀

    Docker基本命令及其用

    Docker 已迅速成為容器化應(yīng)用程序的事實(shí)標(biāo)準(zhǔn)。作為開發(fā)人員或 DevOps 工程師/系統(tǒng)管理員,熟悉 Docker 對(duì)于高效部署現(xiàn)代、可移植的應(yīng)用程序至關(guān)重要。
    的頭像 發(fā)表于 04-30 10:04 ?553次閱讀

    【技術(shù)案例】Android in Docker

    Docker介紹Docker是一個(gè)開源的容器平臺(tái),用于打包、分發(fā)和運(yùn)行應(yīng)用程序。它通過將應(yīng)用及其所有依賴打包到獨(dú)立的容器中,確保應(yīng)用在不同
    的頭像 發(fā)表于 04-02 16:33 ?1432次閱讀
    【技術(shù)案例】Android in <b class='flag-5'>Docker</b>

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

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

    在華為云上通過 Docker 容器部署 Elasticsearch 并進(jìn)行性能評(píng)測(cè)

    前言 ? 1. 華為云X實(shí)例介紹及優(yōu)勢(shì) ? 1.1 柔性算力 ? 1.2 vCPU和內(nèi)存的靈活配比 ? 1.3 成本效益與性能 ? 2. 安裝并運(yùn)行 Docker ? 2.1 修改倉庫配置文件
    的頭像 發(fā)表于 01-13 13:36 ?875次閱讀
    在華為云上通過 <b class='flag-5'>Docker</b> <b class='flag-5'>容器</b><b class='flag-5'>部署</b> Elasticsearch 并進(jìn)行性能評(píng)測(cè)

    華為云 Flexus 云服務(wù)器 X 實(shí)例之 openEuler 系統(tǒng)部署 Docker Compose 管理工具 Dockge

    docker-compose.yaml 部署文件時(shí),Dockge 以其精美的設(shè)計(jì)和易用性脫穎而出,成為不可或缺的管理工具。利用華為云 Flexus 云服務(wù)器 X 實(shí)例的強(qiáng)大性能,在 openEuler 系統(tǒng)上
    的頭像 發(fā)表于 01-08 11:41 ?990次閱讀
    華為云 Flexus 云服務(wù)器 <b class='flag-5'>X</b> 實(shí)例之 openEuler 系統(tǒng)<b class='flag-5'>部署</b> <b class='flag-5'>Docker</b> Compose 管理工具 Dockge

    基于 Docker 與 Jenkins 實(shí)現(xiàn)自動(dòng)化部署

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

    在華為云 FlexusX 實(shí)例上實(shí)現(xiàn) Docker 容器的實(shí)時(shí)監(jiān)控與可視化分析

    前言 華為云 Flexus X,頂尖算力與智能調(diào)度,引領(lǐng) Docker 容器管理新風(fēng)尚。828 企業(yè)上云節(jié)之際,F(xiàn)lexus X 攜手前沿
    的頭像 發(fā)表于 01-02 13:42 ?755次閱讀
    在華為云 FlexusX 實(shí)例上實(shí)現(xiàn) <b class='flag-5'>Docker</b> <b class='flag-5'>容器</b>的實(shí)時(shí)監(jiān)控與可視化分析

    Flexus X 實(shí)例 Docker+Jenkins+gitee 實(shí)現(xiàn) CICD 自動(dòng)化部署 - 解放你的雙手~

    這一前沿解決方案,您的 C# Web API 項(xiàng)目注入前所未有的敏捷動(dòng)力。通過集成 Docker 容器化技術(shù)、Jenkins 持續(xù)集成/持續(xù)部署(CICD)
    的頭像 發(fā)表于 12-26 18:19 ?750次閱讀
    Flexus <b class='flag-5'>X</b> 實(shí)例 <b class='flag-5'>Docker</b>+Jenkins+gitee 實(shí)現(xiàn) CICD 自動(dòng)化<b class='flag-5'>部署</b> - 解放你的雙手~

    am335x芯片把16bit的rgb怎么通過SN65LVDS93A這個(gè)芯片轉(zhuǎn)化為lvds接口的?

    我現(xiàn)在用am335x芯片把16bit的rgb怎么通過SN65LVDS93A這個(gè)芯片轉(zhuǎn)化為lvds接口的?
    發(fā)表于 12-24 08:35

    TPS659037AM574xAM572xAM571x供電的用戶指南

    電子發(fā)燒友網(wǎng)站提供《TPS659037AM574xAM572xAM571x供電的用戶指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-06 15:09 ?0次下載
    TPS659037<b class='flag-5'>為</b><b class='flag-5'>AM574x</b>、<b class='flag-5'>AM572x</b>和<b class='flag-5'>AM571x</b>供電的用戶指南