系统烧录
换源更新
docker安装
docker-compose安装
一、系统烧录
烧录系统
祖穆师傅,公众号:小徐同学爱学习树莓派专刊---搭建kali环境

【备注】
1. 树莓派设备:Raspberry Pi 2b
2. Ubuntu镜像链接:https://ubuntu.com/download/raspberry-pi/thank-you?version=21.10&architecture=server-armhf+raspi
3. 踩坑点:根据自己的设备型号进行下载对应的系统,2b对应的是ARMV7,划重点,后面要考的!


二、换源更新【重点】
替换步骤:
第一步:原文件的备份
# 进入目录:/etc/aptcd /etc/apt# 查看当前文件夹下的内容ls# 备份软件更新源地址并查看cp ./source.list ./source.list.bak && ls -la

第二步:替换源文件内容
# vim编辑文档 --- 防止权限不够,加上Sudosudo vim ./source.list# 在vim的指令模式 (按下Esc进行插入模式和指令模式的切换),输入:%s/ports.ubuntu.com/mirrors.aliyun.com/g # 阿里源:%s/ports.ubuntu.com/mirrors.ustc.edu.cn/g # 科大源# 退出vim并保存修改:wq

第三步:更新目录和软件
# 更新目录和软件源sudo apt-get update && sudo apt-get -y upgrade
【备注】
注意树莓派是ARM架构的,更新源的时候注意镜像源地址的区别
如果权限不够,可以借助Sudo方法。切记,非必要,勿乱用!
简单分析下source.list文件的内容,可以看到在host之后,会带有一些各种不同的单词。host地址我们好理解,后面的单词意思是什么呢?其实也很好理解,类似于你自己创建一个项目的时候,是不是需要跟上发行版本和其他other分类信息。同样,这个源的构成也是这样的:host + 版本代号 + 组件分类信息。

版本代号简单举例 -- 类比macOS的11为BigSur,12为Monterey
系统版本 代号 ubuntu 16.04 xenial ubuntu18.04 bionic 组件分类信息 -- 类比商业版、社区版的概念
代号 含义 main 基本组件 restricted 受限组件 universe 社区维护 multiverse 非自由组件 简单讲下vim
首先,vi和vim还是有些区别的,不过大部分还是共同的。这里以vim为例,vi的话,参考参考。看下图,了解vim工作有三个模式,命令模式(指令模式)、输入模式和底线命令模式。说的很拗口哦,我们简单点记:命令模式和输入模式,其中他们两者通过Esc键进行转换。当在命令模式前加上: 后,就变成了底线命令模式。在 输入模式,我们可以对内容进行修改;在 命令模式,我们可以控制屏幕上的光标移动、字符或字符串删除之类的;在 底线命令模式,我们可以文件保存、退出、设置编辑环境等。

这里简要概括几个常用的,更加详细的,请选择runoob.com!(曾哥教我的,良心网站!)
输入模式 命令模式 底线命令模式 a:插入到光标后 u:撤销一步,可叠加 :wq 保存并退出 i: 插入到光标前 dd: 删除一行 :w! 强制退出 不得不吐槽,微信画表格好丑,这里只罗列了几个。
更详细的,自己去发掘下吧,或者下次单独开一讲,这里不能喧宾夺主!
三、docker安装
第一步:安装docker
翻车版本
# 1. 如果之前有老版本docker,删除sudo apt-get remove docker docker-engine docker.io containerd runc# 2. 安装依赖sudo apt-get install \apt-transport-https \ca-certificates \curl \gnupg-agent \software-properties-common# 3. 添加GPG KEYcurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -# 4. 添加源sudo add-apt-repository \"deb [arch=arm64] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) \stable"# 5. 更新目录后,安装dockersudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io
第二步:没有第二步,直接翻车了。是不是很意外!先看报错的内容吧



🏷:所以这种手动安装的方法,翻车了!还未解决,正在排错,待定!
🏷: 下次可以单独开一栏,这个排错的过程!为什么上面会去解析那个软件源的构成,也是在排错中,怀疑是不是源的问题。结果,这个猜想又被排除了!
🎺---apt背后格式参考文章地址:https://cizixs.com/2014/04/10/ubuntu_repository_format_explained/

# 第一步:远程拉取执行脚本sudo curl -sSL https://get.daocloud.io/docker | sh# 第二步:查看是否安装成功sudo docker version
# deb是二进制包,deb-src是源码包。是科大源,想要知道原因关注后面的组件# deb-src https://mirrors.ustc.edu.cn/ubuntu-ports/ focal main main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu-ports/ focal-updates main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu-ports/ focal-updates main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu-ports/ focal-backports main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu-ports/ focal-backports main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu-ports/ focal-security main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu-ports/ focal-security main restricted universe multiversec
🏷:同时,也参考了网上第三种方法,直接下载源码,进行安装。结果运行出来还是无法执行的。❎如下,大佬可以解答下,如何解决。

🎺---参考文章地址:https://segmentfault.com/a/1190000022902612
第二步:优化配置
🏷:解决普通用户不加sudo---->放入Docker运行组
sudo usermod -aG docker $USER

🏷:设置docker开机自启动
sudo systemctl enable docker
🏷:启动docker
sudo systemctl start docker
第三步:查看docker是否正常

✌🏻,大功告成!终于是能用了,实属不易,这个系列完结,一定要把排错的辛酸历程单独开一节。
这里在补充下,docker的卸载方法
# 1. 删除安装包sudo apt-get purge docker-ce# 2. 删除镜像、容器、配置文件等sudo rm -rf var/lib/docker# 3. 查看是否有残留sudo dpkg -l | grep docker# 4. 删除上述检测到的sudo apt remove --purge docker.*
想学Docker的伙伴,请继续前往runoob.com或者Docker官网,很赞
记住Docker的两大特性:CGroups、Namespace 。这个和Linux内核的特性有点关系。有时间,开一个云计算系列,好好探讨下。
都学了Docker了,Kubernetes也去学习下。建议,先学Docker Swarm的思想,后面学K8s会快很多。
这里部署Docker环境是为了一下节做准备,更新了标题:做树莓派的搭建的安全系列文章。从kali起步,请期待吧!
三、docker-compose安装
为了防止跟Docker安装一样翻车,这次,我们采用最原始的方法。直接将源码下载下来进行安装。实践证明,这样反而是效率最高的。现在归纳下安装方法:
包管理器在线安装(apt、pip、yum等)
源码本地安装
第一步:自己的电脑下载好Docker-Compose的安装包
docker-compose下载地址
https://github.com/docker/compose/releases

第二步:scp上传文件到树莓派
# scp本地上传用法:scp [本地文件] [目标主机]:[目标主机文件地址]scp ./docker-compose ubuntu@192.169.1.103:/home/ubuntu

第三步:docker-compose配置

# find查询docker目录find / -name docker -type d

cp home/ubuntu/docker-compose usr/libexec/docker/cli-plugins/

接下来,就是给予该二进制文件权限了
chmod +x usr/libexec/docker/cli-plugins/docker-compose
我这里出现的是777的情况,当时给顺手了。不嫌麻烦,可以去掉权限。其次,就是建立软链接了
sudo ln -s usr/libexec/docker/cli-plugins/ /usr/bin/docker-compose

最后,我们来测试下是否完成安装
sudo docker-compose --version

结束语
树莓派(RASPBERRY PI 4)UBUNTU 18.04 安装DOCKER
https://www.freesion.com/article/8149949783/
树莓派-ubuntu安装docker和docker-compose
https://blog.csdn.net/qq_40828591/article/details/108205572
树莓派4B安装Ubuntu20.04 解决更换镜像源问题
https://blog.csdn.net/qq_16547997/article/details/106793339
Ubuntu Server 19.10系统的安装、配置和优化
https://blog.csdn.net/qq_35872856/article/details/104442703
换用国内apt源解决树莓派安装ubuntu后apt-get速度慢的问题
https://blog.csdn.net/CharlesSimonyi/article/details/89346473
Docker-Copose安装官方文档
https://docs.docker.com/compose/install/#alternative-install-options
各位,下期见,ZOOM Peace!




