Ja jūs izmantojat Raspberry Pi kā mājas serveri, visticamāk, tā pakalpojumiem piekļūst arī draugi un ģimene. Reizēm viņiem būs jāveic daži rutīnas uzdevumi, kuriem nepieciešama ierobežota servera kontrole.
OliveTin ir pašmitināta lietotne, kurai viņi var piekļūt, izmantojot tīmekļa pārlūkprogrammu, lai izpildītu iepriekš noteiktas komandas un jūsu definētus skriptus.
DIENAS VIDEO MAKEUSEOF RITINĀT, LAI TURPINĀTU AR SATURU
Kāpēc lietot OliveTin uz Raspberry Pi?
Viena borta datoru sērija Raspberry Pi nodrošina izcilus vieglus mājas serverus, un to ir salīdzinoši viegli iestatīt Raspberry Pi tīmekļa serveri .
Papildus vietņu un emuāru mitināšanai jūsu Raspberry Pi var mitināt fotogalerijas , pavārgrāmatas un tiešsaistes biroja komplekti. Jūs varat straumējiet filmas un pārraides savā televizorā, izmantojot Jellyfin , vai pašam izveidot audiogrāmatu bibliotēku ar audiogrāmatu plauktu .
Arī jūs nevarat būt ierobežots ar iespējamo lietotāju skaitu, tāpēc, ja nedzīvojat viens, jūs, iespējams, kopīgojat piekļuvi saviem Raspberry Pi pakalpojumiem ar citiem savas mājsaimniecības locekļiem.
Serveriem, tāpat kā jebkura cita veida datoriem, ir nepieciešama neregulāra apkope. Jūsu lietotājiem tas var būt nepieciešams sākt vai apturēt noteiktus pakalpojumus , izveidot savienojumu ar VPN , dublējiet failus Raspberry Pi , vai pārbaudiet tīkla problēmas .
Ja jūsu ģimene un mājinieki ir pazīstams ar Linux komandrindu , un jūs uzticaties viņiem, ka viņi nejauši vai apzināti neizjauc jūsu sistēmu, varat apsvērt iespēju piešķirt viņiem savus SSH akreditācijas datus kopā ar dalība sudo grupā , lai viņi varētu veikt šos uzdevumus, netraucējot jums.
Tas ir vilinošs, bet bīstams piedāvājums, un, ja kaut kas noiet greizi, tas būs jālabo jums. Izmantojot OliveTin, varat definēt ikdienas komandas, kas citiem servera lietotājiem var būt regulāri jāveic. Pēc tam viņi var atvērt tīmekļa pārlūkprogrammu un nospiest pogu, kas palaidīs komandu jūsu Pi — nekad nav jāpieskaras komandrindai.
Kā instalēt OliveTin vietnē Raspberry Pi
Vienkāršākais veids, kā instalēt OliveTin, ir izmantot Docker Compose. Ja jūsu Raspberry Pi vēl nav instalēts Docker un Docker Compose, skatiet mūsu būtisko ceļvedi vietnē kā instalēt Docker un Docker Compose operētājsistēmā Linux .
Izveidojiet savienojumu ar Raspberry Pi serveri, izmantojot Secure Shell (SSH):
ssh pi@your-local-pi-ip-address
Izveidojiet jaunu OliveTin direktoriju un izmantojiet cd komanda, lai tajā pārvietotos:
mkdir olivetin && cd olivetin
Izmantojiet nano teksta redaktoru, lai izveidotu jaunu Docker Compose failu:
nano docker-compose.yml
Kopējiet un ielīmējiet:
version: "3.5"
services:
olivetin:
container_name: olivetin
image: jamesread/olivetin
user: root
volumes:
- ~/olivetin:/config
- /var/run/docker.sock:/var/run/docker.sock
ports:
- "1337:1337"
restart: unless-stopped
networks:
web:
section:
external: true
Tagad saglabājiet un izejiet no nano ar Ctrl+O tad Ctrl+X .
Pirms OliveTin palaišanas pirmo reizi ir jāizveido konfigurācijas fails. Šeit jūs definēsit komandas, kas lietotājiem jāizpilda. Pagaidām ievadiet:
touch config.yaml
Izmantojiet OliveTin, lai sniegtu saviem lietotājiem ierobežotu servera kontroli
Terminālī ievadiet:
uzdevumjosla tiek parādīta pilnekrāna logos 10
docker-compose up -d
Šī komanda parādīs Docker Compose atdalītajā režīmā. Docker Compose lejupielādēs OliveTin attēlus un iestatīs konteinerus. Šis process var aizņemt kādu laiku. Kad esat atgriezies komandu uzvednē, pārbaudiet, vai viss darbojas pareizi, izmantojot:
docker-compose ps
Atveriet pārlūkprogrammu un dodieties uz jūsu-pi-local-ip-adrese:1337 . Jums vajadzētu redzēt pelēku tīmekļa lapu ar OliveTin kājeni. Tagad esat gatavs sākt definēt komandas saviem lietotājiem.
Atgriežoties terminālī, izmantojiet nano, lai rediģētu iepriekš izveidoto konfigurācijas failu:
nano config.yaml
Sintakse ir vienkārša, un jūs varat definēt pakalpojumu nosaukumus un veicamās darbības līdzīgi šajā piemērā:
actions:
- title: "Reboot server"
shell: reboot
- title: "Ping Netflix"
shell: ping netflix.com
- title: Restart Apache
icon: "🏁"
shell: sudo service apache2 restart
t to lauks ir nosaukums, ko lietotāji var redzēt, kamēr komanda seko apvalks: ir komanda, kas faktiski tiks izpildīta jūsu Raspberry Pi.
OliveTin atbalsta unikoda ikonas, un jūs varat norādīt to HTML kodu ikonu sadaļā. Varat arī iestatīt pilnu URL attēlam, kuru vēlaties izmantot. Piemēram:
icon: '<img src = "https://www.makeuseof.com/public/build/images/muo-logo-full-colored-light.svg" width = "81px"/>'
Lai gan mūsu konfigurācijā ir sniegti piemēri, kas restartēs Raspberry Pi, restartēs Apache un ping Netflix, norādītajām komandām nav ierobežojumu. Varat dot lietotājiem pogu, kas pārkopēs filmas no viena direktorija uz citu, ātri notīrīs un pārrakstīs noteiktus direktorijus vai izveido iznīcināšanas slēdzi, kas šifrēs jūsu atmiņas ierīces ar nejaušu atslēgu.
Kad esat apmierināts ar konfigurāciju, saglabājiet failu un izejiet no nano, nospiežot Ctrl+O tad Ctrl+X.
Jebkurš stdout, kas izveidots pogu nospiešanas rezultātā, tiek reģistrēts. Jūs varat redzēt žurnālus, nospiežot Baļķi pogu augšējā labajā stūrī. Izmantojot OliveTin, jūs varat arī ļaut lietotājiem dot komandas, kas pazīstamas kā argumenti, izmantojot tīmekļa saskarni — vai nu ar tekstlodziņu, vai ar nolaižamajām izvēlēm.
Tā kā pastāv briesmas, kas saistītas ar iespēju nepieredzējušiem lietotājiem izdot priviliģētas patvaļīgas komandas tieši jūsu Raspberry Pi serverim, varat ierobežot OliveTin pieņemto argumentu veidu.
Ātrai uzziņai ir šādi veidi:
Tips | Pieņemtās vērtības |
---|---|
ļoti_bīstama_neapstrādāta_virkne | Kā norāda nosaukums, lietotājs varēs ievadīt jebkuru tekstu vai komandu un likt to izpildīt |
starpt | Jebkurš vesels pozitīvs skaitlis |
ascii | Jebkuras rakstzīmes vai cipars, bet bez atstarpēm vai pieturzīmēm |
ascii_identifikators | DNS un tamlīdzīgi |
ascii_teikums | a-z , 0-9, ar atstarpēm, |
url | Tīmekļa adrese |
Tekstlodziņa definīcija jūsu config.yaml fails ir formatēts šādi:
iphone lādētājs šis piederums, iespējams, netiek atbalstīts
actions:
- title: Echo something to command line
icon: "⛔"
shell: echo {{ message }}
arguments:
- name: message
type: very_dangerous_raw_string
Tekstlodziņš parādīsies, kad kāds nospiedīs atbilstošo pogu, un ļaus jebkuram lietotājam jūsu lokālajā tīklā izpildīt patvaļīgu kodu, izmantojot pārlūkprogrammu. Tā nav pavisam laba ideja.
OliveTin ļauj lietotājiem viegli veikt pamata uzdevumus jūsu Raspberry Pi serverī
Raspberry Pi ir ideāla mājas servera platforma mitināšanas pakalpojumu sniegšanai jūsu ģimenei, un OliveTin ļauj viņiem viegli veikt vienkāršu apkopi, netraucējot jums.
Ir tūkstošiem pašu mitinātu projektu, kurus varat palaist, izmantojot Raspberry Pi, un kas dos labumu jūsu mājsaimniecībai. Veiciet izpēti un uzziniet, par kādiem pakalpojumiem jūs maksājat, par kuriem jūs varētu uzņemt sevi!