树莓派 使用 docker安装showdoc

news2024/11/27 0:43:49

        最近在使用showdoc时感觉挺方便的,但是在树莓派上拉取showdoc对应的镜像时特别慢,熬了一天半发现镜像倒在了最后一步,重试了好几次都没有拉去下来。后来仔细阅读了官网操作文档再加一点小运气今天成功给安装成功了。

showdoc的安装环境:

        树莓派4b 4G内存、Ubuntu 22.04.2 64位系统、Docker version 24.0.2;

第一步、查看showdoc的开源仓库里是否有可以直接使用的安装包。

        开源仓库地址:

        国外地址:GitHub - star7th/showdoc: ShowDoc is a tool greatly applicable for an IT team to share documents online一个非常适合IT团队的在线API文档、技术文档工具

        国内地址:showdoc: ShowDoc就是一个非常适合IT团队的在线文档分享工具,它可以加快团队之间沟通的效率。

        showdoc安装官网指导文档:ShowDoc 

经查阅发现源码里有个“ DockerfileARM ”文件,很是让人开心,查看语句后发现需要安装 arm64v8/wordpress:php7.4的镜像依赖。

DockerfileARM的内容

FROM  arm64v8/wordpress:php7.4

COPY ./ /var/www/html/
RUN mkdir -p /showdoc_data/html
RUN cp -R /var/www/html/ /showdoc_data/
RUN rm -rf /usr/src/wordpress
COPY ./ /usr/src/wordpress
RUN echo "<?php echo file_get_contents('index.html'); ?>" > /var/www/html/web/index.php
RUN chmod -R 777  /var/www/html/

# 写环境变量
ENV SHOWDOC_DOCKER_VERSION 2.4
ENV SHOWDOC_DOCKER_ARM 1

看了一下标签,选择下载了最新的版本 v3.2.2,先下载下来。

 第二步、安装 arm64v8/wordpress:php7.4

       此次安装的arm64v8/wordpress:php8.1 ;后来发现在家的网络拉去该镜像特别慢,就在腾讯云上尝试了一下,意外发现成功了。拉取成功后将腾讯云上的镜像离线下载下来,

命令:

# 拉去镜像,
docker pull arm64v8/wordpress:php8.1

# 导出镜像离线文件,“f54802c4290 ”是镜像php8.1的ID,
# 导出的文件名为 “arm64v8.wordpress.php8.1.tar”
docker save f54802c4290 > arm64v8.wordpress.php8.1.tar

#下载: 
sz  arm64v8.wordpress.php8.1.tar

# 向树莓派的docker导入镜像
docker load < arm64v8.wordpress.php8.1.tar

# 导入后的镜像名称和版本是看不到的,需要自定义
docker tag f54802c42907 arm64v8/wordpress:php8.1

第三步、将showdoc源码上传至树莓派,准备生成镜像

执行如下步骤:      

  • 将 “showdoc-v3.2.2.zip”上传树莓指定文件夹,本次为“/home/docker/showdoc”

  • 解压文件  showdoc-v3.2.2.zip,上图已经解压好了
unzip showdoc-v3.2.2.zip
  • 进入加压后的文件“showdoc-v3.2.2”,删除其他Dockerfile 文件只留下 DockerfileARM ,并将其该名为 Dockerfile
rm -rf Dockerfile     DockerfileChina

mv DockerfileARM Dockerfile

 

  • 编辑 Dockerfile 将第一行“FROM  arm64v8/wordpress:php7.4”改成“FROM  arm64v8/wordpress:php8.1”
# 编辑Dockerfile文件
vi Dockerfile

#编辑好后的内容

FROM  arm64v8/wordpress:php8.1

COPY ./ /var/www/html/
RUN mkdir -p /showdoc_data/html
RUN cp -R /var/www/html/ /showdoc_data/
RUN rm -rf /usr/src/wordpress
COPY ./ /usr/src/wordpress
RUN echo "<?php echo file_get_contents('index.html'); ?>" > /var/www/html/web/index.php
RUN chmod -R 777  /var/www/html/

# 写环境变量
ENV SHOWDOC_DOCKER_VERSION 2.4
ENV SHOWDOC_DOCKER_ARM 1

 第四步、生成镜像“arm64v8/showdoc:3.2.2”

#进入待生成的镜像文件夹
cd /home/docker/showdoc/showdoc-v3.2.2/

# 执行生成命令
docker build -t  arm64v8/showdoc:3.2.2  .

命令截图 

 第五步、验证镜像可行性

        先运行容器,然后查看docker的运行状态,当容器稳定运行时则在浏览器访问,访问地址:http://【树莓派ip】:4999 ;就可以了。

# 运行容器
docker run -d --name showdoc -p 4999:80 arm64v8/showdoc:3.2.2

# 查看运行结果
docker ps

运行截图: 

 第六步、总结

        本次实践主要解决树莓派 docker安装showdoc时拿不到可以直接用的镜像问题。

其中执行 docker pull star7th/showdoc:arm-latest 时特别慢,拉取国内镜像 :docker pull registry.cn-shenzhen.aliyuncs.com/star7th/showdoc 后,发现树莓派处理器不兼容,拉下来的镜像需要amd处理器,而树莓派的是arm。所以就使用这种方式来处理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/778291.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【本地电脑搭建Web服务器并用cpolar发布至公网

本地电脑搭建Web服务器并用cpolar发布至公网访问 随着互联网的快速发展&#xff0c;网络也成为我们生活中不可缺少的必要条件&#xff0c;为了能在互联网世界中有自己的一片天地&#xff0c;建立一个属于自己的网页就成为很多人的选择。但互联网行业作为资本密集的行业&#x…

企业网络安全合规框架体系

云安全联盟大中华区发布报告《企业网络安全合规框架体系》&#xff08;以下简称报告&#xff09;&#xff0c;该报告对典型业务场景给出了参考实例&#xff0c;供广大甲方单位、集成商、咨询机构参考。 近些年&#xff0c;随着国内网络安全领域相关法律、法规、政策文件、标准规…

Seata部署(Centos和Docker)

一、简介 Seata 是一款开源的分布式事务框架。致力于在微服务架构下提供高性能和简单易用的分布式事务服 务。在 Seata 开源之前&#xff0c;Seata 对应的内部版本在阿里经济体内部一直扮演着分布式一致性中间件的⻆ 色&#xff0c;帮助经济体平稳的度过历年的双11&#xff0c…

Unity+chatgpt+webgl实现声音录制+语音识别

一、前言 AI二次元女友这个项目持续更新&#xff0c;在window端的语音识别和语音合成的功能&#xff0c;在上一篇博文里已经详细说明了微软Azure语音服务的代码实现。也是为了实现一次代码&#xff0c;多端复用这样的诉求&#xff0c;所以全部的代码实现都改成了web api的方式…

openSUSE leap 15.3安装mysql-community-server

openSUSE Software 下载"https://software.opensuse.org/ymp/home:bjoernv/15.3/mysql-community-server.ymp" wget "https://software.opensuse.org/ymp/home:bjoernv/15.3/mysql-community-server.ymp" 双击"mysql-community-server.ymp" 添…

Flutter Windows通过嵌入Native窗口实现渲染视频

Flutter视频渲染系列 第一章 Android使用Texture渲染视频 第二章 Windows使用Texture渲染视频 第三章 Linux使用Texture渲染视频 第四章 全平台FFICustomPainter渲染视频 第五章 Windows使用Native窗口渲染视频&#xff08;本章&#xff09; 文章目录 Flutter视频渲染系列前言…

FPGA XDMA 中断模式实现 PCIE3.0 QT上位机图片传输 提供工程源码和QT上位机源码

目录 1、前言2、我已有的PCIE方案3、PCIE理论4、总体设计思路和方案图像产生、发送、缓存XDMA简介XDMA中断模式图像读取、输出、显示QT上位机及其源码 5、vivado工程详解6、上板调试验证7、福利&#xff1a;工程代码的获取 1、前言 PCIE&#xff08;PCI Express&#xff09;采…

【深度学习之YOLO8】环境部署

目录 一、确定版本CUDA toolkit、cuDNN版本Python、PyTorch版本 二、安装Python下载环境变量验证安装 三、安装Anaconda安装环境变量验证安装创建conda虚拟环境常用命令 四、安装CUDA toolkit下载环境变量验证安装 五、配置cuDNN下载 六、安装PyTorch(torchtorchversiontorchau…

JavaWeb课程设计项目实战(05)——项目编码实践2

版权声明 本文原创作者&#xff1a;谷哥的小弟作者博客地址&#xff1a;http://blog.csdn.net/lfdfhl 在本节教程中&#xff0c;我们完成项目的登录功能。 User 请在bean包中创建User类&#xff0c;代码如下&#xff1a; package com.cn.bean; /*** 本文作者&#xff1a;谷…

离线安装mysql8

一、先前往官网下载mysql8 下载地址&#xff1a; https://dev.mysql.com/downloads/ 选择Linux 二、删除Linux中的mysql&#xff08;如果有的话&#xff09;&#xff0c;上传安装包 1、先查看mysql是否存在&#xff0c;命令如下&#xff1a; rpm -qa|grep -i mysql 如果使用…

集成了Eureka的应用启动失败,端口号变为8080

问题 报错&#xff1a;集成了Eureka的应用启动失败&#xff0c;端口号变为8080。 原来运行的项目&#xff0c;突然报错&#xff0c;端口号变为8080&#xff1a; Tomcat initialized with port(s): 8080 (http)并且&#xff0c;还有如下的错误提示&#xff1a; RedirectingE…

keil5编辑器主题配色美化使用(附六款暗黑主题)

一、通过配置文件修改主题 1、在软件安装目下备份以下三个文件&#xff0c;更换主题只需要替换global.prop arm.propglobal.propglobal.prop.def 2、替换配置文件 将已经准备好的配色文件复制到\UV4下替换 https://download.csdn.net/download/qq_43445867/88064961 Theme1…

通讯录--动态版

简易的通讯录往往需要朴实的“烹饪”就能完成一道“美味的佳肴”。 我们需要一个通讯录&#xff0c;能够存储联系人的信息&#xff0c;能够对联系人的信息进行增删查改&#xff0c;查询&#xff0c;按姓名排序。相比对之前的三子棋、扫雷&#xff0c;有了一定的了解&#xff0c…

git commit -m时候没有保存package.json等文件

项目场景&#xff1a; 提示&#xff1a;git add . 和 git commit -m "保存" 操作&#xff0c;没有保存package.json等文件。 解决方案&#xff1a; 1.确保 package.json 文件没有被列在 .gitignore 文件中。打开 .gitignore 文件&#xff0c;检查是否有类似于 packa…

数据库运维——备份恢复

数据库备份&#xff0c;数据库为school&#xff0c;素材如下 1.创建student和score表 CREATE TABLE student ( id INT(10) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR(20) NOT NULL , sex VARCHAR(4) , birth YEAR, department VARCHAR(20) , address VARCHAR(…

交换一个整数二进制位的奇数位和偶数位

目录 一、方案一 1.求待操作数的二进制序列 2.创建一个数组存放待操作数的二进制序列 3.交换二进制序列奇偶位 4.输出奇偶位交换之后的二进制序列 5.代码 二、方案二&#xff08;宏的实现&#xff09; 1.求待操作数二进制序列偶数位 2.求待操作数二进制序列奇数位 3.求待…

目标检测——yoloV3案例

目录 数据获取TFrecord文件什么是TFrecord文件将数据转换成TFrecord文件读取TFrecord文件数据处理 模型构建模型训练损失函数的计算正负样本的设定模型训练获取数据集加载模型模型训练 模型预测 数据获取 labellmage使用方法 TFrecord文件 什么是TFrecord文件 将数据转换成T…

python暴力破解wifi密码

python破解WiFi密码 无图形化界面版图形化界面版 刚开始怀着是以为可以自动生成并匹配密码进行破解&#xff0c;然后才知道都需要使用密码本&#xff0c;破解都不知道要猴年马月去了。。。。。但可以研究理解一下代码过程 使用pycharm需要调试一下&#xff0c;比较麻烦&#xf…

【Docker】Docker网络与存储(三)

前言&#xff1a; Docker网络与存储的作用是实现容器之间的通信和数据持久化&#xff0c;以便有效地部署、扩展和管理容器化应用程序。 文章目录 Docker网络桥接网络容器之间的通信 覆盖网络创建一个覆盖网络 Docker存储卷 总结 Docker网络 Docker网络是在容器之间提供通信的机…

速成版-带您一天学完python自动化测试(selenium)

Selenium是一套web网站的程序自动化操作解决方案。我们通过编写自动化程序&#xff0c;使得自动完成浏览器界面的相关操作&#xff0c;除了能够自动化的完成相关操作&#xff0c;还能从web页面获取相关信息&#xff0c;然后通过程序进行分析处理&#xff0c;本质上就是提升从网…