主頁(yè) > 知識(shí)庫(kù) > 使用docker build kit構(gòu)建樹莓派上可用的Docker鏡像

使用docker build kit構(gòu)建樹莓派上可用的Docker鏡像

熱門標(biāo)簽:阿里云 智能手機(jī) 美圖手機(jī) 網(wǎng)站建設(shè) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 檢查注冊(cè)表項(xiàng) 硅谷的囚徒呼叫中心 使用U盤裝系統(tǒng)

Docker安裝

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG ${user_name}

build-kit是什么

  • 參考build ARM based Docker Images
  • 簡(jiǎn)單來說就是擴(kuò)展docker build的一個(gè)實(shí)驗(yàn)性的功能

以bind為案例進(jìn)行構(gòu)建

docker-bind項(xiàng)目是一個(gè)開源的自定義DNS部署服務(wù),但是并沒有提供基于linux/aarch64架構(gòu)的可用鏡像,因此需要自己使用buildx命令執(zhí)行構(gòu)建操作

在樹莓派系統(tǒng)中,執(zhí)行uname -a來查看自己的目標(biāo)架構(gòu)

  • linux/aarch64
  • linux/amd64
  • linux/arm64
  • linux/arm/v7

....

# 在樹莓派系統(tǒng)中執(zhí)行如下命令
git clone https://github.com/sameersbn/docker-bind.git
cd docker-bind
# 修改Dockerfile內(nèi)容,注意!!此項(xiàng)設(shè)置與docker-bind有關(guān),與build-kit的使用無(wú)關(guān),僅做演示用
echo 'FROM ubuntu:focal-20200423 AS add-apt-repositories
COPY jcameron-key.asc jcameron-key.asc
RUN apt-get update \

 && DEBIAN_FRONTEND=noninteractive apt-get install -y gnupg \

 && apt-get install -y curl \

 && apt-key adv --fetch-keys https://www.webmin.com/jcameron-key.asc \

 && echo "deb http://download.webmin.com/download/repository sarge contrib" >> /etc/apt/sources.list

FROM ubuntu:focal-20200423

LABEL maintainer="sameer@damagehead.com"

ENV BIND_USER=bind \

  BIND_VERSION=9.16.1 \

  WEBMIN_VERSION=1.970 \

  DATA_DIR=/data

RUN apt-get update \

 && apt-get install -y curl

COPY --from=add-apt-repositories /etc/apt/trusted.gpg /etc/apt/trusted.gpg

COPY --from=add-apt-repositories /etc/apt/sources.list /etc/apt/sources.list

RUN rm -rf /etc/apt/apt.conf.d/docker-gzip-indexes \

 && apt-get update \

 && DEBIAN_FRONTEND=noninteractive apt-get install -y \

   bind9=1:${BIND_VERSION}* bind9-host=1:${BIND_VERSION}* dnsutils \

   webmin=${WEBMIN_VERSION}* \

 && rm -rf /var/lib/apt/lists/*

COPY entrypoint.sh /sbin/entrypoint.sh

RUN chmod 755 /sbin/entrypoint.sh

EXPOSE 53/udp 53/tcp 10000/tcp

ENTRYPOINT ["/sbin/entrypoint.sh"]

CMD ["/usr/sbin/named"]' > Dockerfile
# 登錄到自己的docker倉(cāng)庫(kù)
# 自己使用的是阿里云的鏡像倉(cāng)庫(kù),也可以使用dockerhub官方倉(cāng)庫(kù)
docker login --username=${user_name} registry.cn-hangzhou.aliyuncs.com
docker buildx build --platform linux/aarch64 -t registry.cn-hangzhou.aliyuncs.com/docker-image-lee/bind:aarch64 --no-cache --push .

# 如果是在Mac或Windows上執(zhí)行構(gòu)建的話,需要首先執(zhí)行下述命令
docker buildx create --use

push完成后,就可以在樹莓派上拿來用了~

參考

build ARM based Docker Images

docker buildx build

Build Docker Image for Raspberry Pi

到此這篇關(guān)于使用docker build kit構(gòu)建樹莓派上可用的Docker鏡像的文章就介紹到這了,更多相關(guān)docker build kit樹莓派Docker鏡像內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

標(biāo)簽:湖北 山南 賀州 煙臺(tái) 懷化 通遼 湘潭 黃山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用docker build kit構(gòu)建樹莓派上可用的Docker鏡像》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266