[Neuer kleiner Host] Sunflower-Fernbedienung Ubuntu

1. Einleitung

Hardware: Core N100 kleiner Host, 8G+512G.
System: ubuntu22.04.3
Zweck: Ich habe am 1. Oktober einen Feiertag und habe nichts zu tun. Verwenden Sie Sunflower, um Ubuntu über Windows fernzusteuern und einige Mikrodienste zu erstellen .
Fügen Sie hier eine Bildbeschreibung ein

2. Probleme und Lösungen

2.1 Wenn Sunflower eine Remote-Verbindung zum Ubuntu22-Host herstellt, wird der Bildschirm schwarz?

Grund: Sunflower verwendet lightdm für die Schnittstellendarstellung, aber Ubuntu verfügt standardmäßig nicht darüber. Stattdessen verwendet es gdm3 für die Bildverarbeitung.

Befehl verwenden

sudo apt install lightdm

Wählen Sie während des Installationsvorgangs lightdm als Desktop-System aus und starten Sie neu, um die Änderung abzuschließen.
Es kann auch später geändert werden

sudo dpkg-reconfigure lightdm

2.2 Wie starte ich Ubuntu automatisch?

Terminal

gnome-session-properties

Öffnen Sie die Startanwendungseinstellungen und fügen Sie das Verzeichnis der Sunflower-Startdatei hinzu/usr/local/sunlogin/bin/sunloginclient (starten Sie es nach dem Booten auf dem Desktop).

注:设置-用户-自动登录打开,实现开机进桌面启动向日葵。

2.3 Wie verbinde ich Windows Remote Desktop ohne Monitor mit Ubuntu?

Prinzip
Verwenden Sie xserver-xorg, um einen Bildschirm zu virtualisieren und die Auflösung und andere Konfigurationen festzulegen.
Installieren Sie den virtuellen Monitor

sudo apt-get install  xserver-xorg-core-hwe-18.04
sudo apt-get install  xserver-xorg-video-dummy

Erstellen Sie eine neue Konfigurationsdatei

sudo vi /usr/share/X11/xorg.conf.d/xorg.conf
Section "Device"
    Identifier  "Configured Video Device"
    Driver      "dummy"
EndSection
 
Section "Monitor"
    Identifier  "Configured Monitor"
    HorizSync 31.5-48.5
    VertRefresh 50-70
EndSection
 
Section "Screen"
    Identifier  "Default Screen"
    Monitor     "Configured Monitor"
    Device      "Configured Video Device"
    DefaultDepth 24
    SubSection "Display"
    Depth 24
    Modes "1920x1080"
    EndSubSection
EndSection

Nach dem Neustart wird ein virtueller Bildschirm angezeigt, und Sie können windows远程桌面 oder 向日葵 verwenden, um eine Remoteverbindung herzustellen.
Es scheint, dass der ursprüngliche physische Desktop wiederhergestellt werden kann, indem der neu erstellte xorg.conf配置文件 oben gelöscht und neu gestartet wird, was ssh Speichern erfordert.

注:设置->电源,将节电选项中的息屏改为从不,防止连接中断。
设置->隐私->屏幕,可能还要关闭一个自动锁屏。

3. Verschönern Sie den Desktop

3.1 Installieren/entpacken

  • Bericht:tweaks美化插件,gnome的User Themes 插件
  • Thema:WhiteSur-gtk-theme-master.zip
  • Symbol:Mkos-Big-Sur-master.zip

3.2 Einstellungen

  • Öffnentweaks / 优化Programme-Darstellung/Fenstertitelleiste, legen Sie das Mac-Design und -Symbol fest und haben festgestellt, dass durch Optimierungen auch das Startprogramm festgelegt werden kann.

  • Öffnen设置Programm – Aussehen.

3.3 In der oberen rechten Ecke wird die Netzwerkgeschwindigkeit in Echtzeit angezeigt

PPA wird durch HinzufügenPPA installiert und bezieht sich auf个人软件包存档 (Personal Package Archives), eine Softwareverteilung in Ubuntu und anderen Linux-Distributionen. Mit PPA können einzelne Benutzer ihre eigenen Software-Repositorys erstellen und verwalten und Softwarepakete anderen Benutzern zur Installation und Aktualisierung zur Verfügung stellen. Offizielle PPAs sind im Allgemeinen zuverlässig und sicher, während PPAs von seriösen Betreuern ebenfalls zuverlässiger sind. Die Zuverlässigkeit von PPAs von Drittentwicklern oder einzelnen Benutzern kann jedoch variieren und muss mit Vorsicht betrachtet werden. Einige Leute haben unterschiedliche Ansichten zu PPAs, Puristen mögen PPAs möglicherweise nicht, während sie in Distributionen wie Ubuntu und Debian immer noch beliebt sind, weil sie einfachere Optionen für die Softwareinstallation bieten.

sudo add-apt-repository ppa:fossfreedom/indicator-sysmonitor	//添加PPA
sudo apt-get update
sudo apt-get install indicator-sysmonitor						//安装
indicator-sysmonitor &											//后台运行
>>最后在图形界面中设置开机自启,显示格式。

Fügen Sie hier eine Bildbeschreibung ein

4. Installieren Sie Docker-Container und stellen Sie Microservices bereit

4.1 Docker-Container installieren

Referenz-Blogbeitrag:Ubuntu22.04 Docker installieren

Docker ist eine高效、灵活、轻量级 Containerisierungsplattform, die mehrere Containeranwendungen isolieren und auf einem einzigen Betriebssystem ausführen kann.

也就是说可以自己在容器里随意搞,把里边儿环境搞坏也不会影响系统环境,类似于anaconda。
  • Aktualisieren Sie den Schlüssel und die Repository-Quelle von apt
sudo apt update

sudo apt 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 -	//设置docker镜像源每个发布的deb包,都是通过密钥认证的,apt-key用来管理密钥。以下命令就是将docker相关密钥添加到apt-key。
注:出现OK表示设置成功

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"	//添加docker apt仓库源相当于给apt添加了一个关于docker的仓库源。

sudo apt update	//更新apt,以保证后续安装的是最新版docker
  • Installieren Sie die neueste Docker-Version
sudo apt install docker-ce docker-ce-cli containerd.io

sudo systemctl status docker	//验证docker运行状态

docker container run hello-world	//运行Hello world容器

4.2 Grundlegende Docker-Befehle

镜像(Image) ist eine statische, nicht veränderbare Datei, die alle Dateisysteme, Bibliotheken und Software enthält, die zum Ausführen eines Containers erforderlich sind. Ein Bild kann als schreibgeschützte Vorlage angezeigt werden, die zum Erstellen mehrerer Container verwendet werden kann.
容器(Container) ist die laufende Instanz des Bildes. Es handelt sich um eine unabhängige und schlanke Laufzeitumgebung, in der Anwendungen ausgeführt werden können. Ein Container enthält eine Kopie des Bildes und eine Dateisystemschicht mit Lese-/Schreibzugriff, die es ermöglicht, Dateien innerhalb des Containers zu ändern. Container können erstellt, gestartet, gestoppt, gelöscht usw. werden.
Kurz gesagt ist ein Image eine Vorlage zum Erstellen eines Containers, bei dem es sich um eine Instanz eines Images handelt, in dem eine Anwendung ausgeführt werden kann.

Referenz-Blogbeiträge:Zusammenfassung häufig verwendeter Docker-Befehle, Zusammenfassung häufig verwendeter Docker-Befehle< /span>

使用sudo运行docker
  • Befehl „Helfen Sie beim Starten der Klasse“.
systemctl start docker	//启动docker
systemctl stop docker	//停止docker
systemctl restart docker	//重启docker
systemctl status docker		//查看docker状态
systemctl enable docker		//设置开机自启
systemctl disable docker	//取消开机自启
docker info					//查看docker概要信息
docker 命令(如run) --help		//查看docker命令帮助文档
docker system df -v			//查看单个image、container大小
  • Spiegelbezogen
docker images					//查看镜像列表
docker search ubuntu			//镜像搜索,搜索 ubuntu 基础镜像
docker pull 镜像名				//下拉镜像
docker pull 镜像名:Tag
docker rmi -f 镜像名/镜像ID		//删除镜像
docker save 镜像名/镜像ID -o 镜像保存在哪个位置与名字	//保存镜像
docker load -i 镜像保存文件位置	//加载镜像
  • Containerbezogen
sudo docker ps						//查看运行的容器
sudo docker ps -as					//-a:查看所有容器,包含正在运行和已停止的;-s:顺便看内存
docker run -it -d --name 要取的别名 -p 宿主机端口:容器端口 -v 宿主机文件存储位置:容器内文件位置 镜像名:Tag /bin/bash 				//创建容器

docker exec -it container /bin/bash 或 docker attach container	//进入正在运行的容器并以命令行交互
docker exec -it container [shell命令]		//可直接执行容器内部命令
			-d    在后台运行命令
			-i    即使没有附加也保持 STDIN 打开
			-t    设置TTY

docker start 容器ID或者容器名		//启动已停止运行的容器
docker restart 容器ID或者容器名		//重启容器
docker stop 容器名/容器ID			//停止容器
docker rm -f 容器名/容器ID			//删除一个容器

4.3 Bereitstellungsservice – Pagodenpanel

Referenz-Blogbeitrag:Installieren Sie Linux Pagoda unter Docker, installieren Sie Pagoda Panel in Docker

  • Installieren Sie die Pagode
//1、下载一个docker镜像,这里用ubutun
docker pull ubuntu
//2、创建一个docker容器命名为baota并后台运行,然后将宿主机的20,21,80,443,888,8888这五个端口映射到docker容器中去。
//将宿主机的/home/www文件夹映射到docker容器的/www上去,privileged表示在运行容器的时候,给容器加特权,设置容器有写文件的权限。
docker run -i -t -d --name baota -p 20:20 -p 21:21 -p 80:80 -p 443:443 -p 888:888 -p 8888:8888 --privileged=true -v /home/www:/www ubuntu
//3、进入容器
docker exec -it baota /bin/bash
//4、执行宝塔面板ubuntu安装命令
wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh ed8484bec
  • Access Pagoda
    Nach der Installation von Pagoda generierte der Access-Port zufällig einen weiteren Port. Wenden Sie sich einfach an Docker, um den Container-Port zu ändern.
    Referenz-Blogbeitrag: Docker-Container-Port ändern
docker stop 容器		//停止容器
systemctl stop docker	//停止docker

//修改以下两个文件中的端口映射
/var/lib/docker/containers/容器ID*/hostconfig.json
/var/lib/docker/containers/容器ID*/config.v2.json

systemctl restart docker	//重启docker
docker restart 容器			//重启容器

Zu diesem Zeitpunkt können Sie sich beim Panel anmelden, indem Sie auf das LAN zugreifen{主机ip:端口/安全入口名称}.
Geben Sie bt in das Terminal ein und wählen Sie die Option 14, um den spezifischen Zugangseingang anzuzeigen

  • Erstellen Sie eine Website
    Installieren Sie LNMP, erstellen Sie die Website, wie hoch ist die Intranet-Penetration? Beachten Sie, dass die PHP-Version 7.2 erforderte, um sich an meine vorherigen Website-Daten anzupassen (php7.2, Nginx1). .20.2, MySQL5.7.40, phpmyAdmin5.0, ftp1.0.49) wird spekuliert, dass es sich um ein Versionsproblem handelt, das Probleme bei der Darstellung der Website verursacht. Aber alles wurde später erledigt und es brauchte einen kleinen Host mit hoher Leistung. Die Website lief viel flüssiger als die Website zuvor, die auf der kleinen Box lief. Es scheint, dass die persönliche Website auch von der CPU-Leistung des Servers abhängt.

  • Website mit einem Klick öffnen/schließen

(1)startweb_docker.sh

#!/bin/bash
echo "启动docker服务"
sudo systemctl start docker
echo "启动baota容器"
sudo docker start baota
echo "运行容器中的自启服务,bt、nginx、mysqld、frp等服务"
sudo docker exec -it baota /etc/rc.local
echo "ok.^_^."

Darunter befindet sich rc.local im Container

#!/bin/bash
# autostart program
/etc/init.d/bt start
sleep 1
/etc/init.d/nginx start
sleep 1
/etc/init.d/mysqld start
sleep 1
nohup /frp/frpc -c /frp/frpc.ini >/dev/null 2>&1 &
echo "frp running"
sleep 1

(2)stopweb_docker.sh

#!/bin/bash
echo "关闭baota容器"
sudo docker stop baota
echo "关闭docker服务"
sudo systemctl stop docker.service
sudo systemctl stop docker.socket
echo "ok.^_^."

4.4 Bereitstellungsdienst – ein Chat-Roboter

Referenzlink:Xiaoran
Quellcode-Ressource:ChatGPT-Next-Web

  • Abteilungsumgebung
    1.OS: Ubuntu 22.04.3 LTS x86_64
    2.Docker-Version: Docker-Version 24.0.6< a i=3> 3.API-URL-Summenschlüssel:closeai

  • Docker-Bereitstellung

docker pull yidadaa/chatgpt-next-web	//获取镜像
sudo docker run -d --name container_name -p host_port:3000 -e OPENAI_API_KEY="api key" -e CODE="log in password" -e BASE_URL="proxy_web" -e DISABLE_GPT4="1" -e PROTOCOL="https" yidadaa/chatgpt-next-web
	//OPENAI_API_KEY:OpenAi api key sk-开头的一串字母
	//CODE:授权码;网页端需要授权码或者自己的api key才可以使用
	//BASE_URL:OpenAI 的接口代理 URL,如果在墙外,可直接指向正宫api.openai.com。
	//PROTOCOL:openai接口协议,默认是https,可选项,但是要和BASE_URL使用的协议一致。
	//-p是暴露的端口
	//DISABLE_GPT4="1"禁用4.0。
  • Intranet-Penetrationslösung
    Nachdem der obige Container ausgeführt wurde, kann nur über localhost:host_port im LAN darauf zugegriffen werden. Wie sieht es mit dem öffentlichen Netzwerkzugriff aus? Natürlich über das Intranet!
    Für diese Maschine gibt es zwei Lösungen:
    1. Erstellen Sie erneut eine Intranet-Penetration auf dem Host und ordnen Sie den Port zu.
    2. Verwenden Sie basierend auf dem Baota-Container in Abschnitt 4.3 das Baota-Panel, um eine neue Site als Reverse-Proxy-Server zu erstellen und auf die URL des Chat-Containers zu verweisen.
    Hierbei wird auf jeden Fall Option 2 verwendet, was Ärger erspart (es fügt lediglich einen http-Tunnel zu Wukong Digital hinzu).

  • Einrichtung des Reverse-Proxy-Servers

1. Erstellen Sie eine neue Site im Pagodenfenster.
Fügen Sie hier eine Bildbeschreibung ein
2. Erstellen Sie einen Proxyserver
Fügen Sie hier eine Bildbeschreibung ein
Nach Abschluss der oben genannten Vorgänge können Sie einen benutzerdefinierten Domänennamen verwenden, um auf das Chat-Web zuzugreifen. Der Proxyserver übernimmt die Rolle von Weiterleitung und Weiterleitung. .

4.5 Vocechat-Chat

sudo docker pull privoce/vocechat-server

sudo docker run -d --restart=always -p host_port:3000 --name vocechat-server -v host_path:/home/vocechat-server/data privoce/vocechat-server

Klicken Sie für Details:Offizielle Website

5. Nutzungsgewohnheiten

5.1 Ubuntu Wireless WIFI-Betrieb

sudo nmcli r wifi on	//开启WiFi
sudo nmcli dev wifi		//扫描附近的 WiFi 热点
sudo nmcli dev wifi connect "热点名称" password "密码" ifname wlan0	//连接到指定的 WiFi 热点
sudo nmcli r wifi off	//关闭 wifi

5.2 Systemdienst-Manager-Befehl systemctl

  • systemctl: Anweisungen zum Verwalten von Systemdiensten.
systemctl start xxx.service 		//启动nfs服务

systemctl enable xxx.service 		//设置开机自启动

systemctl is-enabled xxx.service	//查看是否开机自启动

systemctl disable xxx.service 		//停止开机自启动

systemctl status xxx.service 		//查看服务当前状态

systemctl restart xxx.service 		//重新启动某服务

systemctl list-units --type=service //查看所有已启动的服务
  • Überprüfen Sie die CPU-Temperatur mit dem lm-sensors-Installationspaket
sensors	//安装好lm-sensors后,直接查看cpu各个核的温度。

5.3 Netzwerkbetrieb

netstat -apn	//查看所有进程和端口的使用情况

Guess you like

Origin blog.csdn.net/qq_41753052/article/details/133421149