使用docker build kit構(gòu)建樹莓派上可用的Docker鏡像
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)單來(lái)說(shuō)就是擴(kuò)展
docker build
的一個(gè)實(shí)驗(yàn)性的功能
以bind為案例進(jìn)行構(gòu)建
docker-bind項(xiàng)目是一個(gè)開源的自定義DNS部署服務(wù),但是并沒(méi)有提供基于linux/aarch64
架構(gòu)的可用鏡像,因此需要自己使用buildx
命令執(zhí)行構(gòu)建操作
在樹莓派系統(tǒng)中,執(zhí)行uname -a
來(lái)查看自己的目標(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完成后,就可以在樹莓派上拿來(lái)用了~
參考
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)文章希望大家以后多多支持腳本之家!
相關(guān)文章
教你使用Docker?Compose一鍵部署前后端分離項(xiàng)目
Compose是一個(gè)定義和管理多容器的工具,使用Python語(yǔ)言編寫,下面這篇文章主要給大家介紹了關(guān)于如何使用Docker?Compose一鍵部署前后端分離項(xiàng)目的相關(guān)資料,需要的朋友可以參考下2023-01-01docker容器內(nèi)要啟動(dòng)兩個(gè)進(jìn)程時(shí)Dockerfile的實(shí)現(xiàn)代碼
這篇文章主要介紹了docker容器內(nèi)要啟動(dòng)兩個(gè)進(jìn)程時(shí)Dockerfile的實(shí)現(xiàn)代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-11-11使用elasticsearch定時(shí)刪除索引數(shù)據(jù)
這篇文章主要介紹了使用elasticsearch定時(shí)刪除索引數(shù)據(jù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03docker打包node項(xiàng)目的過(guò)程講解
今天小編就為大家分享一篇關(guān)于docker打包node項(xiàng)目的過(guò)程講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03Docker Compose 搭建簡(jiǎn)單的Python網(wǎng)絡(luò)應(yīng)用程序(步驟詳解)
在這個(gè)頁(yè)面上,你可以建立一個(gè)簡(jiǎn)單的Python網(wǎng)絡(luò)應(yīng)用程序,運(yùn)行在Docker Compose上,這篇文章主要介紹了Docker Compose 搭建簡(jiǎn)單的Python網(wǎng)絡(luò)應(yīng)用程序,需要的朋友可以參考下2022-07-07詳解使用Docker部署MySQL(數(shù)據(jù)持久化)
這篇文章主要介紹了詳解使用Docker部署MySQL(數(shù)據(jù)持久化),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09ssh 直接登錄docker容器的操作方法(不用通過(guò)宿主機(jī)進(jìn)入)
這篇文章主要介紹了ssh 直接登錄docker容器的操作方法(不用通過(guò)宿主機(jī)進(jìn)入),本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-06-06docker部署nginx并且實(shí)現(xiàn)https的方法步驟
啟用HTTPS可以提高網(wǎng)站的安全性、可信度,同時(shí)符合法規(guī)要求,本文主要介紹了docker部署nginx并且實(shí)現(xiàn)https的方法步驟,具有一定的參考價(jià)值,感興趣的可以了解一下2024-07-07