树莓派折腾记 - 基础配置

前言

前年买了一个树莓派3b+、ardunio,一直舍不得用(看前几天博客可知,写完一篇后再没下文),近期任务不是很重,把这些设备用起来,做个微型服务器。

本文主要是系统和基础环境的安装(无显示器),code-server便于远程调试代码,不用远程登录到服务器vim来改代码。

本文操作使用ubuntu用户,不是root用户,命令有缩减,需要一定Linux基础。

Ubuntu Raspberry

写本文时,使用的是树莓派3B+,安装Ubuntu Server 20.04.1 LTS 64位。

使用Ether刻录到tf卡,刻录后往根目录创建一个ssh的文件,接网线,开机。

如需使用wifi,打开TF卡根目录下的network-config文件,删除或修改wifis节点下面的内容,参考内容如下,jxnu为wifi名

wifis:
  wlan0:
    dhcp4: true
    optional: true
    access-points:
      jxnu:
        password: "12345678"

默认是UTC时区,执行以下命令修改时区。

sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

Docker

安装Docker,和ubuntu上安装几乎一样,可参考官方文档。

话说我是先装的centos7,由于arm centos的docker版本太老,弃坑装ubuntu。

sudo apt-get update
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
   "deb [arch=arm64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://8wlyegdb.mirror.aliyuncs.com"]
}
EOF

sudo groupadd docker
sudo gpasswd -a ${USER} docker
sudo systemctl enable docker
sudo systemctl restart docker

sudo wget  https://github.com/bcicen/ctop/releases/download/v0.7.5/ctop-0.7.5-linux-arm64 -O /usr/local/bin/ctop
sudo chmod +x /usr/local/bin/ctop

CodeServer

  • 下载安装
wget https://github.com/cdr/code-server/releases/download/v3.8.0/code-server_3.8.0_arm64.deb
sudo dpkg -i code-server_3.8.0_arm64.deb

tee /data/code-server/config.yaml << 'EOF'
bind-addr: 127.0.0.1:8081
auth: password
password: 123456
cert: false
user-data-dir: /data/code-server/user
extensions-dir: /data/code-server/extensions
EOF

code-server --host 0.0.0.0 --port 8081 --config /data/code-server/config.yaml
  • 配置服务

注意,配置成服务,code-server内的terminal默认将是root用户。

sudo tee  /usr/lib/systemd/system/code-server.service << 'EOF'
[Unit]
Description=code-server
After=network.target

[Service]
Type=simple
ExecStart=code-server --host 0.0.0.0 --port 8081 --config /data/code-server/config.yaml

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable code-server
sudo systemctl start code-server

NodeJs

刚开始装的最新的14.15.3,由于gpio库只支持到13,故重新下载一个10.23.0,命令类似,不做展开。

# wget https://nodejs.org/dist/latest-v10.x/node-v10.23.0-linux-arm64.tar.gz
wget https://nodejs.org/dist/v14.15.3/node-v14.15.3-linux-arm64.tar.xz
tar -xvf ./node-v14.15.3-linux-arm64.tar.xz

echo 'NODEJS_HOME=/data/nodejs/node-v14.15.3-linux-arm64' >> ~/.bashrc
echo 'export PATH=$PATH:$NODEJS_HOME/bin' >> ~/.bashrc

Java

oracle jdk,点击上面链接下载,需要登录,环境变量如下。

JAVA_11_HOME=/data/java/jdk-11.0.9
JAVA_HOME=$JAVA_11_HOME
export PATH=$PATH:$JAVA_HOME/bin

nginx

docker部署nginx,使用host网络,便于使用多个端口,一般还是只映射80、443端口。


docker run -d --name nginx --restart always \
--network host \
-v `pwd`/conf.d:/etc/nginx/conf.d \
-v `pwd`/logs:/var/log/nginx 
-v `pwd`/data:/data \
nginx:1.19

frp

frp客户端,用于内网穿透。

docker run -d --name frpc_sz --restart always \
  -v `pwd`/frpc_sz.ini:/frp/frpc.ini \
  axboy:0.29.0-arm \
  /frp/frpc -c /frp/frpc_sz.ini
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页