树莓派安装docker,并在PC端监控,启动swarm集群

Posted 男孩为何穿短裙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了树莓派安装docker,并在PC端监控,启动swarm集群相关的知识,希望对你有一定的参考价值。

0.前期准备

硬件及OS:

  路由器,

  笔记本wifi  ,

  虚拟机Centos 7,

  6个树莓派3B: OS为Raspberry Pi,node1是64位的aarch64,剩下都是32位armv7l ,使用wifi。

软件:

  docker:v23.0.6 、

  portainer-ce

1. 虚拟机和主机同网段

  首先在控制面板 -> 网络和Internet -> 网络连接里查看目前使用的是哪个网卡,如图:

  在虚拟机编辑列表中选择虚拟网络编辑器,

  打开后点击更改设置,

  选择桥接模式,桥接至的列表中选择刚刚查看的网卡名称,最后点确定。

  这样虚拟机就和PC一个网段了。

2. 安装docker

  虚拟机centos7 安装docker的过程略,查看其它博客。

  树莓派安装docker:

sudo curl -sSL https://get.docker.com | sh

  本来想离线安装的,但是因为arm架构,尤其是aarch64版本的OS,总是报各种错误,只能选择在线安装。

  设置自启动docker:

sudo systemctl enable docker

3. 安装portainer

  默认版本:

docker run -d \\
--name portainer \\
-p 9000:9000  \\
-v /var/run/docker.sock:/var/run/docker.sock \\
--restart always \\
portainer/portainer

  中文版本:

docker run -d \\
--name=portainer-zh \\
-p 9100:9000 \\
-v /var/run/docker.sock:/var/run/docker.sock \\
--restart=always \\
6053537/portainer-ce

 

树莓派启动:for Mac

树莓派启动


实验器材:

硬件准备:

实验主板一块(树莓派);
5V/1A电源一个(手机电源);
microUSB线一根;
USB-TTL串口线一根(FT232RL芯片或PL2303芯片)。
PC一台(Mac OS);
路由器

软件需求:

PC上的USB-TTL串口线配套的驱动程序
PC上的串口终端软件:minicom
PC上的SSH软件(Mac自带)
交叉编译软件  

实验步骤:

硬件准备:

连接串口线:串口线黑线接地,白线接GPIO14,绿线接GPIO15,示意图如下:

技术分享

技术分享
电源由手机电源提供

下载一个img文件:[https://www.raspberrypi.org/downloads]
插入SD卡到电脑上,将img文件写到SD卡中
使用df –h 命令查看所有的挂载设备:

技术分享

为树莓派准备的SD卡的设备名为disk2s1
利用dd 命令安装镜像:`sudo dd bs=4m if=2016-02-26-raspbian-jessie.img of=/dev/disk2s1`

技术分享

1、安装串口驱动和串口终端软件

安装串口驱动:
登陆PL2303官网:[http://www.prolific.com.tw/]下载Mac OS平台的驱动,并安装,安装完成后重新启动。

安装串口驱动软件minicom:
1、在网上下载对应的版本的MacPorts并安装
2、在~/.bash_profile文件中添加环境变量:

技术分享
安装minicom,在终端执行:sudo port installl minicom
技术分享
至此,串口驱动程序和串口终端软件就安装成功了。

2、给pcDuina上电,记录启动过程的输出

1、  在命令行输入`sudo minicom -s`启动程序,选择serial port setup,按照下图进行配置:

技术分享

2、回车,修改主菜单里的Modem and dialing选项,把A、B、K三个选项的字符删空,再回车,选择主菜单中的save setup as dfl
3、重新进入命令行,输入minicom之后,进入minicom,插上电源,显示开机信息如下(包含解释):
Uncompressing Linux... done, booting the kernel.   
//解压Linux核心系统                            
[    0.000000] Booting Linux on physical CPU 0x0  
//加载核心CPU指令集,并初始化CPU                             
[    0.000000] Initializing cgroup subsys cpuset                               
[    0.000000] Initializing cgroup subsys cpu                                  
[    0.000000] Initializing cgroup subsys cpuacct                              
[    0.000000] Linux version 4.1.18+ ([email protected]) (gcc version 4.9.3 (c6
[    0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cd
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instrue
[    0.000000] Machine model: Raspberry Pi Model B Rev 2 
//打印系统信息  
.........................
Raspbian GNU/Linux 8 raspberrypi ttyAMA0  

3、通过Linux获得硬件数据

输入用户名和密码,登陆树莓派:
树莓派初始用户名和密码。用户名:pi  密码:raspberry

技术分享

查看CPU型号以及时钟频率:cat /proc/cpuinfo 

技术分享
其中,时钟频率可以通过CPU MIPS计算得到。

查看内存总量:grep MemTotal /proc/meminfo 

技术分享

4、配置网络,并从pcDuino和PC两端证明网络已经连接好

从终端登陆树莓派,配置网络:
利用网线,将树莓派和路由器连接起来:
进入192.168.1.1查看已经连接的设备(因为在这里使用的是别人的路由器,而他的路由器和Mac地址绑定,所以在我的电脑上不能打开192.168.1.1 网页),但是可以通过ifconfig命令查看树莓派绑定的 ip 地址:

技术分享

在树莓派端证明网络已经连接成功,在树莓派端输入:ping www.baidu.com

技术分享

在PC 端证明网络已经连接,在PC 端输入: ping 192.168.1.105

技术分享

5、看到多个不同端口的登陆,并运行Linux的write来进行通信

1、存在多个登录时,查看多个端口的登陆
输入命令 `netstat -nat|grep ESTABLISHED`查看当前有效登陆及IP地址 

技术分享

2、利用write函数进行多端口通信, 格式为 write username 

技术分享
技术分享

6、选择和安装PC上的交叉编译环境

下载ARM GNU Linux编译工具链:[https://github.com/downloads/UnhandledException/ARMx/ARMx-2009q3-67.tar.bz2]

------------------------------------------
由于Mac系统默认对于大小写不敏感,因此需要新建一个对大小写敏感的磁盘映像。
------------------------------------------

新建磁盘映像,利用Mac自带的磁盘工具新建磁盘映像

技术分享

解压工具链到磁盘映像,命令如下:`tar –zx –C / Volumes/disk/ --skip-components 1 –f ARMx-2009q3-67.tar.bz2`
编译文件:
创建一个文件:hello.c
#include<stdio.h>
int main(){
    printf("Hello World!");
    return 0;
}
编译文件:`/Volumes/disk/bin/arm-none-linux-gnueabi-gcc hello.c -o hello`
查看文件:ls –l

技术分享

7、利用scp上传

利用scp上传(这个和上面的是不在一个路由器上做的,做一这里树莓派绑定的IP地址不一样)
输入sudo scp hello [email protected]:~/homework2

技术分享

查看是否上传成功:ls

技术分享

利用ssh登陆树莓派后查看文件 

技术分享

8、尝试从PC远程访问嵌入式板卡图形桌面的方式:VNC

安装远程桌面:(通过VNC)
安装Mac版本的VNC:(http://www.realvnc.com/products/vnc/documentation/5.0/installing-removing/macosx)
通过SSH连接树莓派
在树莓派下下载远程桌面服务器(利用tightvncserver)
安装:sudo apt-get install tightvncserver
开启tightvncserver并找到远程桌面号:1(这里是1)

技术分享

在vnc server框中输入树莓派的 ip:远程桌面号

技术分享

选择continue,然后输入密码后就可以登陆了。

技术分享

技术分享







以上是关于树莓派安装docker,并在PC端监控,启动swarm集群的主要内容,如果未能解决你的问题,请参考以下文章

树莓派安装FLASK服务;并在端网页读取 GPIO状态和系统时间

树莓派进阶之路 (018) - 树莓派通过filezilla,samba与PC文件共享(转)

树莓派根据温度自动启动风扇,python3代码简单

树莓派4B安装 docker 和 docker-compose

树莓派docker安装nginx+php备忘录

树莓派启动:for Mac