<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>raspberry - Hard Wired</title>
	<atom:link href="https://www.hardwired.dev/tag/raspberry/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.hardwired.dev</link>
	<description></description>
	<lastBuildDate>Tue, 05 Dec 2023 07:27:48 +0000</lastBuildDate>
	<language>cs</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>

<image>
	<url>https://www.hardwired.dev/wp-content/uploads/2022/10/android-chrome-256x256-1-150x150.png</url>
	<title>raspberry - Hard Wired</title>
	<link>https://www.hardwired.dev</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Orange Pi Zero 2W</title>
		<link>https://www.hardwired.dev/2023/09/16/orange-pi-zero-2w/</link>
		
		<dc:creator><![CDATA[Valentino Hesse OK2HSS]]></dc:creator>
		<pubDate>Sat, 16 Sep 2023 04:44:05 +0000</pubDate>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Raspberry]]></category>
		<category><![CDATA[Allwinner H618]]></category>
		<category><![CDATA[Allwinner H618 Cortex-A53]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[orange pi]]></category>
		<category><![CDATA[Orange Pi Zero 2W]]></category>
		<category><![CDATA[pc]]></category>
		<category><![CDATA[raspberry]]></category>
		<category><![CDATA[SBC]]></category>
		<guid isPermaLink="false">https://www.hardwired.dev/?p=1401</guid>

					<description><![CDATA[<p>Dostupnost jednodeskových počítačů Raspberry Pi se sice již podstatně zlepšila, ale stále existují modely, ke kterým se někteří prostě nedostanou &#62;&#62;&#62;</p>
<p>The post <a href="https://www.hardwired.dev/2023/09/16/orange-pi-zero-2w/">Orange Pi Zero 2W</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="bsf_rt_marker"></div><p>Dostupnost jednodeskových počítačů Raspberry Pi se sice již podstatně zlepšila, ale stále existují modely, ke kterým se někteří prostě nedostanou protože je jich málo a je velká poptávka. Jeden z takových modelů je RPI Zero 2W. Pro ty, kteří hledají alternativu s podobnými možnostmi a výkonem, ale přesto odlišným přístupem, přichází do hry nový hráč: <strong>Orange Pi Zero 2W</strong>.</p>
<p>Podíváme se na to co Orange Pi Zero 2W nabízí a proč by mohl být zajímavou volbou pro ty, kteří se chtějí ponořit do světa jednodeskových počítačů. Porovnáme ho s RPI Zero 2W a zjistíme, jaký potenciál a možnosti přináší. Ať už jste začínající nadšenec do elektroniky nebo zkušený vývojář, Orange Pi Zero 2W by vás mohl překvapit svými schopnostmi a flexibilitou.</p>
<p>Pokud hledáte kompaktní, ale i výkonný jednodeskový počítače pro své projekty v oblasti IoT, inteligentní domácnosti nebo televizních boxů, Orange Pi Zero 2W by mohl být tím pravým řešením. Tento malý, ale výkonný SBC počítač je poháněno čtyřjádrovým procesorem <strong>Allwinner H618 Cortex-A53</strong> s frekvencí až <strong>1,5 GHz</strong> a nabízí širokou škálu možností a funkcí.</p>
<p>Podíváme se podrobněji na Orange Pi Zero 2W a zjistíme, proč je to tak výjimečné jednodeskové řešení. Prozkoumáme jeho specifikace, rozšiřitelnost, kompatibilitu s operačními systémy a mnoho dalšího. Pokud máte zájem o vývojové projekty, které vyžadují kompaktní a výkonný hardware, nebo jednoduše hledáte způsob, jak využít IoT technologie ve svém domově, tento článek vám poskytne všechny potřebné informace.</p>
<p>Podíváme se na jejich parametry:</p>
<h4 id="vlastnosti">Vlastnosti</h4>
<h3><strong>Raspberry</strong></h3>
<figure>
<table style="height: 589px;" width="417">
<thead>
<tr>
<th>Vlastnost</th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
</tr>
<tr>
<td>Procesor</td>
<td>Broadcom BCM2710A1, quad-core 64-bit SoC (Arm Cortex-A53 @ 1GHz)</td>
</tr>
<tr>
<td>Paměť</td>
<td>512 MB LPDDR2</td>
</tr>
<tr>
<td>Konektivita</td>
<td>2,4GHz IEEE 802.11 b/g/n bezdrátová síť</td>
</tr>
<tr>
<td></td>
<td>Bluetooth 4.2 BLE</td>
</tr>
<tr>
<td></td>
<td>Vestavěná anténa</td>
</tr>
<tr>
<td></td>
<td>1 × rozhraní USB 2.0 s OTG</td>
</tr>
<tr>
<td></td>
<td>Kompatibilní s 40pinovými rozšiřujícími deskami HAT</td>
</tr>
<tr>
<td></td>
<td>Slot na microSD kartu</td>
</tr>
<tr>
<td></td>
<td>Mini HDMI port</td>
</tr>
<tr>
<td></td>
<td>CSI-2 konektor pro připojení kamery</td>
</tr>
<tr>
<td>Video</td>
<td>HDMI rozhraní</td>
</tr>
<tr>
<td></td>
<td>Kompozitní video</td>
</tr>
<tr>
<td></td>
<td>Dekódování H.264, MPEG-4 (1080p30)</td>
</tr>
<tr>
<td></td>
<td>Kódování H.264 (1080p30)</td>
</tr>
<tr>
<td></td>
<td>Grafika OpenGL ES 1.1, 2.0</td>
</tr>
<tr>
<td>Napájení</td>
<td>5V DC, 2,5A</td>
</tr>
<tr>
<td>Provozní teplota</td>
<td>-20 °C až +70 °C</td>
</tr>
<tr>
<td>Životnost produktu</td>
<td style="text-align: left;">Raspberry Pi Zero 2 W se bude vyrábět minimálně do ledna 2028</td>
</tr>
</tbody>
</table>
<h3><strong>Orange PI</strong></h3>
<table style="height: 576px;" width="528">
<tbody>
<tr>
<td>procesor</td>
<td class="td-list">Allwinner H618 čtyřjádrový procesor Cortex-A53 1,5 GHz</td>
</tr>
<tr>
<td>GPU</td>
<td class="td-list">Mali G31 MP2<br />
– Podpora OpenGL ES 1.0/2.0/3.2, OpenCL 2.0, Vulkan 1.1</td>
</tr>
<tr>
<td>RAM</td>
<td class="td-list">LPDDR4: 1GB/1,5GB/2GB/4GB (volitelné)</td>
</tr>
<tr>
<td>Paměť</td>
<td class="td-list">SPI Flash: 16 MB</td>
</tr>
<tr>
<td>Wi-Fi + BT</td>
<td class="td-list">Wi-Fi 5.0+BT 5.0, BLE</td>
</tr>
<tr>
<td>Video výstup</td>
<td class="td-list">1*Port Mini HDMI TX 2.0 s podporou 4K@60FPS</td>
</tr>
<tr>
<td>USB</td>
<td class="td-list">USB 2.0*2 typu C</td>
</tr>
<tr>
<td>Rozhraní SD karty</td>
<td class="td-list">1 * Rozhraní karty Micro SD</td>
</tr>
<tr>
<td>Rozhraní rozšíření</td>
<td class="td-list">24pinové rozšiřující rozhraní: USB2.0*2, 100M Ethernet rozhraní, rozhraní IR přijímače, audio výstup, TV-out, vypínač, uživatelsky definovaná tlačítka*2</td>
</tr>
<tr>
<td>40pin</td>
<td class="td-list">40pinové rozhraní pro rozšíření funkcí, podporující následující typy rozhraní:<br />
GPIO, UART, I2C, SPI, PWM</td>
</tr>
<tr>
<td>Zdroj energie</td>
<td class="td-list">Typ-C 5V2A</td>
</tr>
<tr>
<td>Podporovaný OS</td>
<td class="td-list">Android 12 TV, Debian 11, Debian 12, Ubuntu22.04, Ubuntu 20.04, Orange Pi OS (Arch)</td>
</tr>
<tr>
<td>Rozměr PCB</td>
<td class="td-list">30 mm x 65 mm x 1,2 mm</td>
</tr>
<tr>
<td>Hmotnost</td>
<td class="td-list">12,5 g</td>
</tr>
</tbody>
</table>
<p><a href="https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img21.png"><img fetchpriority="high" decoding="async" class="size-full wp-image-1405 aligncenter" src="https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img21.png" alt="" width="1200" height="670" srcset="https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img21.png 1200w, https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img21-300x168.png 300w, https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img21-1024x572.png 1024w, https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img21-768x429.png 768w" sizes="(max-width: 1200px) 100vw, 1200px" /></a></p>
<p><a href="https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img22.png"><img decoding="async" class="size-full wp-image-1404 aligncenter" src="https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img22.png" alt="" width="1282" height="835" srcset="https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img22.png 1282w, https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img22-300x195.png 300w, https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img22-1024x667.png 1024w, https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img22-768x500.png 768w" sizes="(max-width: 1282px) 100vw, 1282px" /></a></p>
<p>&nbsp;</figure>
<p>&nbsp;</p>
<p>Orange Pi Zero 2W a Raspberry Pi Zero 2W jsou dva malé jednodeskové počítače, které nabízejí kompaktní a cenově dostupnou řešení pro vývojové projekty a domácí automatizaci. I když mají některé společné vlastnosti, jako je podpora Wi-Fi a Bluetooth, existují mezi nimi některé významné rozdíly.</p>
<p><strong>Prvním rozdílem je procesor. Orange Pi Zero 2W je vybaven čtyřjádrovým procesorem Allwinner H618 Cortex-A53 s frekvencí 1,5 GHz, zatímco Raspberry Pi Zero 2W používá procesor Broadcom BCM2710B0 Cortex-A53 s frekvencí 1,2 GHz. To dává Orange Pi mírnou výhodu výkonu.</strong></p>
<p><strong>Dalším rozdílem je grafický čip. Orange Pi Zero 2W používá Mali G31 MP2 s podporou OpenGL ES 1.0/2.0/3.2, OpenCL 2.0 a Vulkan 1.1, zatímco Raspberry Pi Zero 2W má VideoCore VI s podporou OpenGL ES 3.2, Vulkan a dalších standardů.</strong></p>
<p><strong>Co se týče paměti, Orange Pi Zero 2W nabízí různé konfigurace RAM, zatímco Raspberry Pi Zero 2W má pevně stanovenou 512 MB RAM.</strong></p>
<p>Raspberry Pi Zero 2W má také některé výhody v oblasti ekosystému a komunity. Raspberry Pi je známý svým rozsáhlým ekosystémem a obrovskou komunitou uživatelů, což znamená, že je k dispozici široká škála dokumentace, projektů a podpory.</p>
<p>Závěrem lze říci, že oba počítače mají svá specifická využití a výhody. Orange Pi Zero 2W nabízí větší výkon a flexibilitu v konfiguraci paměti, zatímco Raspberry Pi Zero 2W má silnou komunitu a ekosystém. Volba mezi nimi závisí na konkrétních požadavcích a potřebách vašeho projektu.</p>
<p><a href="https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img23-e1694838797725.png"><img decoding="async" class="size-full wp-image-1403 aligncenter" src="https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img23-e1694838797725.png" alt="" width="1008" height="514" srcset="https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img23-e1694838797725.png 1008w, https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img23-e1694838797725-300x153.png 300w, https://www.hardwired.dev/wp-content/uploads/2023/09/0825-zero2w-img23-e1694838797725-768x392.png 768w" sizes="(max-width: 1008px) 100vw, 1008px" /></a></p>
<p>Orange Pi Zero 2W přináší kompaktní a výkonné řešení pro vývojové projekty a domácí automatizaci. S Micro HDMI 2.0 a dvěma USB-C porty nabízí široké možnosti připojení periferií, a to včetně napájení. Duální WiFi5 a Bluetooth 5.0 s externí anténou zajišťují stabilní a rychlé bezdrátové připojení.</p>
<p>Navíc, s rozšiřující deskou, která obsahuje USB 2.0 konektory, RJ45 10/100 Mb/s, 3,5 mm audio jack, tlačítka a IR přijímač, je možné rozšířit funkcionalitu Orange Pi Zero 2W dle potřeby. S cenou od 16 (pro verzi s 1 GB RAM) do 24 dolarů (pro verzi s 4 GB RAM) je to cenově dostupný a výkonný mini počítač pro vaše projekty.</p>
<p>Rozšiřující deska je k dispozici za pouhých 5 dolarů, což je skvělý způsob, jak přizpůsobit Orange Pi Zero 2W vašim potřebám. Využijte tuto kompaktní a cenově dostupnou platformu pro své kreativní nápady a projekty.</p>
<p><strong>Závěr</strong></p>
<p>Pro technické nadšence, vývojáře a experimentátory nabízí Orange Pi Zero 2W kompaktní a cenově dostupnou platformu, která otevírá brány k různým inovativním projektům. S čtyřjádrovým procesorem, podporou Wi-Fi a Bluetooth, a širokým spektrem rozhraní pro rozšíření funkcí se stává ideálním společníkem pro tvorbu domácích automatizací, IoT zařízení, či vzdělávacích experimentů. Jeho výkon a flexibilita jej řadí mezi zajímavé alternativy na trhu jednodeskových počítačů. Orange Pi Zero 2W představuje nejen technickou výzvu, ale také základ pro vytvoření zajímavých projektů, které posunou vaše dovednosti a nápady na novou úroveň.</p>

<div class="twitter-share"><a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fwww.hardwired.dev%2F2023%2F09%2F16%2Forange-pi-zero-2w%2F&#038;via=hessevalentino&#038;related=hessevalentino%3AValentino%20Hesse%20OK2HSS" class="twitter-share-button">Tweet</a></div><p>The post <a href="https://www.hardwired.dev/2023/09/16/orange-pi-zero-2w/">Orange Pi Zero 2W</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>UPS 18650 battery shield v8</title>
		<link>https://www.hardwired.dev/2022/09/21/ups-18650-battery-shield-v8/</link>
		
		<dc:creator><![CDATA[Valentino Hesse OK2HSS]]></dc:creator>
		<pubDate>Wed, 21 Sep 2022 19:14:46 +0000</pubDate>
				<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[IOT]]></category>
		<category><![CDATA[Raspberry]]></category>
		<category><![CDATA[18650]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[hat]]></category>
		<category><![CDATA[power]]></category>
		<category><![CDATA[powerbank]]></category>
		<category><![CDATA[powerbanka]]></category>
		<category><![CDATA[radxa]]></category>
		<category><![CDATA[raspberry]]></category>
		<category><![CDATA[shield]]></category>
		<guid isPermaLink="false">https://hessevalentino.cz/?p=407</guid>

					<description><![CDATA[<p>Tento modul z aliexpress pro baterie 18650 může sloužit jako UPS shield třeba pro Raspberry nebo Arduino. Může být využit &#62;&#62;&#62;</p>
<p>The post <a href="https://www.hardwired.dev/2022/09/21/ups-18650-battery-shield-v8/">UPS 18650 battery shield v8</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="bsf_rt_marker"></div><p>Tento modul z aliexpress pro baterie <strong>18650</strong> může sloužit jako UPS shield třeba pro Raspberry nebo Arduino. Může být využit i jako powerbanka na cesty nebo napájecí zdroj pro vaše stolní projekty a experimenty. Jeho provedení je kvalitní a DPS je krásně vyvedena.</p>
<p><strong>Popis</strong></p>
<p><img loading="lazy" decoding="async" class="size-medium wp-image-413 alignleft" src="http://wordpress.hardwired.dev/wp-content/uploads/2022/09/Dual-18650-Lithium-Battery-Shield-V3-Mobile-Power-Expansion-Board-Micro-USB-Port-Type-C-Charger.jpg_Q90.jpg_-300x300.webp" alt="" width="300" height="300" srcset="https://www.hardwired.dev/wp-content/uploads/2022/09/Dual-18650-Lithium-Battery-Shield-V3-Mobile-Power-Expansion-Board-Micro-USB-Port-Type-C-Charger.jpg_Q90.jpg_-300x300.webp 300w, https://www.hardwired.dev/wp-content/uploads/2022/09/Dual-18650-Lithium-Battery-Shield-V3-Mobile-Power-Expansion-Board-Micro-USB-Port-Type-C-Charger.jpg_Q90.jpg_-150x150.webp 150w, https://www.hardwired.dev/wp-content/uploads/2022/09/Dual-18650-Lithium-Battery-Shield-V3-Mobile-Power-Expansion-Board-Micro-USB-Port-Type-C-Charger.jpg_Q90.jpg_-768x768.webp 768w, https://www.hardwired.dev/wp-content/uploads/2022/09/Dual-18650-Lithium-Battery-Shield-V3-Mobile-Power-Expansion-Board-Micro-USB-Port-Type-C-Charger.jpg_Q90.jpg_-400x400.webp 400w, https://www.hardwired.dev/wp-content/uploads/2022/09/Dual-18650-Lithium-Battery-Shield-V3-Mobile-Power-Expansion-Board-Micro-USB-Port-Type-C-Charger.jpg_Q90.jpg_.webp 1000w" sizes="auto, (max-width: 300px) 100vw, 300px" />Velice kompaktní a praktický battery shield v8, díky kterému lze napájet <a href="http://wordpress.hardwired.dev/self-hosted-matrix-server/">projekty z baterie</a> a zároveň umožňuje tuto baterii nabíjet. Na modulu se nachází Micro USB konektor pro vstup, USB-C konektor pro výstup, klasický USB-A konektor pro výstup a zároveň jsou na desce 3krát piny pro 5V a 3krát piny pro 3.3V.</p>
<p>Modul může fungovat jako UPS (uninterruptible power supply), tedy nepřerušitelný nabíjecí zdroj. Baterie může být nabíjena a zároveň modul slouží jako zdroj.</p>
<p>Výstupní proud dosahuje 1A při 3.3V napětí a 3A při 5V napětí. Nabíjecí proud modulu je 600mA se vstupním napětím 5V. Celkově jsou na 1S modulu zabudovány:<br />
– Ochranný nabíjecí obvod proti overcharge a overdischarge (přílišné vybití a nabití čipy DW01-P a FS8205A)<br />
– LDO regulátory (3 krát paralelní čipy LM6206n3)<br />
– Boostovací obvod pro napájení z baterie (FP6298)<br />
– Speciální nabíjecí obvod pro lithiové baterie 18650 (TP4056)<br />
– ON/OFF přepínač odpojující USB konektor<br />
– Indikační LED pro zobrazení úrovně nabití</p>
<p><img loading="lazy" decoding="async" class="size-medium wp-image-409 alignleft" src="http://wordpress.hardwired.dev/wp-content/uploads/2022/09/b-3-300x282.jpeg" alt="" width="300" height="282" srcset="https://www.hardwired.dev/wp-content/uploads/2022/09/b-3-300x282.jpeg 300w, https://www.hardwired.dev/wp-content/uploads/2022/09/b-3.jpeg 605w" sizes="auto, (max-width: 300px) 100vw, 300px" />Na modulu se nachází přepínač mezi NORMAL/HOLD. Rozdíl v těchto módech je, že pokud je přepínač na NORMAL, modul při odběru menším, než 30mA odpojí výstup a uspí se. Je-li nastaven na HOLD, modul se nikdy neuspí.</p>
<p>V případě že si přejete modul úplně vypnout stiskněte 3x mikrospínač na boční straně tohoto shieldu. Tím dojde k vypnutí napájeni a pohasnutí indikačních led.</p>
<p><strong>Indikační LED</strong></p>
<p><strong>Nabíjení: </strong></p>
<ul>
<li>100 % (všech pět LED svítí)</li>
<li>80-99 % (D5 bliká)</li>
<li>60-80 % (D4 bliká)</li>
<li>40-60 % (D3 bliká)</li>
<li>20-40 % (D2 je bliká) Bliká)</li>
<li>0-20% (D1 bliká)</li>
</ul>
<p><strong>Vybíjeni:</strong></p>
<ul>
<li>80-100 % (všech pět LED svítí)</li>
<li>60-80 % (D5 nesvítí)</li>
<li>40-60 % (D4, D5 nesvítí)</li>
<li>20-40 % (D3, D4, D5 vypnuto)</li>
<li>5-20 % (D2, D3, D4, D5 vypnuto)</li>
<li>1-5 % (D1 bliká) 0 % (vše vypnuto)</li>
</ul>
<p><strong>Specifikace</strong></p>
<p>Vstupní napětí: 3.7V / 4.2V (baterie)<br />
Výstupní napětí: 5V / 3.3V<br />
Výstupní proud: 3.3V – 1A; 5V – 3A (kontinuální max 2.2A)<br />
Nabíjecí proud: 600 mA<br />
Doporučený konstantní výstupní proud je do 1A<br />
Modul může sloužit jako UPS<br />
1S modul má zabudovaný micro USB konektor pro nabíjení, 2S a 4S mají kromě microUSB také USB-C</p>
<p><strong>Koupíte ho pod tímto odkazem: </strong><br />
<a href="https://www.aliexpress.com/item/4001297199153.html?spm=a2g0o.order_list.0.0.323b1802On6RCv">https://www.aliexpress.com/item/4001297199153.html?spm=a2g0o.order_list.0.0.323b1802On6RCv</a></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-415 size-post-thumbnail" src="http://wordpress.hardwired.dev/wp-content/uploads/2022/09/Dual-18650-Lithium-Battery-Shield-V3-Mobile-Power-Expansion-Board-Micro-USB-Port-Type-C-Charger.jpg_Q90.jpg_-800x440.jpeg" alt="" width="800" height="440" /></p>

<div class="twitter-share"><a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fwww.hardwired.dev%2F2022%2F09%2F21%2Fups-18650-battery-shield-v8%2F&#038;via=hessevalentino&#038;related=hessevalentino%3AValentino%20Hesse%20OK2HSS" class="twitter-share-button">Tweet</a></div><p>The post <a href="https://www.hardwired.dev/2022/09/21/ups-18650-battery-shield-v8/">UPS 18650 battery shield v8</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Self hosted Matrix server</title>
		<link>https://www.hardwired.dev/2022/09/15/self-hosted-matrix-server/</link>
		
		<dc:creator><![CDATA[John Doe]]></dc:creator>
		<pubDate>Thu, 15 Sep 2022 15:19:19 +0000</pubDate>
				<category><![CDATA[Docker]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Raspberry]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[element]]></category>
		<category><![CDATA[end-to-end]]></category>
		<category><![CDATA[fediverse]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[matrix]]></category>
		<category><![CDATA[portainer]]></category>
		<category><![CDATA[postgre]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[raspberry]]></category>
		<category><![CDATA[rpi]]></category>
		<category><![CDATA[synapse]]></category>
		<guid isPermaLink="false">https://hessevalentino.cz/?p=297</guid>

					<description><![CDATA[<p>Těžko by jste asi hledali někoho, kdo nikdy neposlal ani jednu zprávu přes Messenger nebo podobnou službu. Asi můžeme říct, &#62;&#62;&#62;</p>
<p>The post <a href="https://www.hardwired.dev/2022/09/15/self-hosted-matrix-server/">Self hosted Matrix server</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="bsf_rt_marker"></div><p>Těžko by jste asi hledali někoho, kdo nikdy neposlal ani jednu zprávu přes Messenger nebo podobnou službu. Asi můžeme říct, že je to jeden z nejrozšířenějších komunikačních prostředků současnosti.</p>
<p>S rostoucím podílem těchto služeb v oblasti všeobecné komunikace vyvstal i takový nešvar. Hovorově bychom mohli říct &quot;fízlování&quot;. V reálu to bude nějaká sada algoritmů, která se snaží na základě klíčových slov, frází nebo nějaké sofistikovanější analýzy rozpoznat závadný či protiprávní obsah. Tyto praktiky se většinou zaštiťují ochranou dětí před XYZ a podobné zavádějící důvody. Ale o problematice svobody slova a práva na soukromí tento příspěvek není.</p>
<p>Klasické textové komunikační služby ukládají vaše zprávy v nešifrované podobě. Nemáte vůbec tušení jak dlouho se vaše data uchovávají a za jakým účelem (většinou marketing) mohou být přeprodávána. A už vůbec nevíte, kdy a kdo, to může použít proti vám. (byť třeba vytržené z kontextu)</p>
<p>Situaci si můžete vylepšit tím, že používáte &quot;end-to-end&quot; šifrované komunikátory. Telegram, Signal, Threema a podobně. Při této metodě komunikace by v ideálním případě zprostředkovatel neměl být schopný zprávy jakkoliv dešifrovat.</p>
<p>Tak je to možná v ideálním světě. V tom našem můžeme narazit na pár úskalí. Musíme zprostředkovateli věřit, že dodává takovou službu jakou inzeruje. I když nemusí vidět přímo obsah zpráv, stále si může uchovávat kdo, kdy a s kým komunikoval. Nepříjemností taky je registrace podmíněná poskytnutím telefonního čísla. Telefonní číslo za určitých podmínek dává smysl a používání aplikace je díky němu komfortnější, ale taky je to další vektor útoku na vaši identitu.</p>
<p>Alternativní možností je zprovoznit vlastní Matrix server. Pokud o tom slyšíte poprvé, můžete prozkoumat <a href="https://fediverse.party/" title="Fediverse ekosystém">Fediverse ekosystém</a> a pořádně se ponořit do králičí nory.</p>
<p>Jen ve zkratce popis na wikipedii.</p>
<blockquote>
<p>The fediverse (a portmanteau of federation and universe) is an ensemble of federated (i.e. interconnected) servers that are used for web publishing (i.e. social networking, microblogging, blogging, or websites) and file hosting, but which, while independently hosted, can communicate with each other. On different servers (instances), users can create so-called identities. These identities are able to communicate over the boundaries of the instances because the software running on the servers supports one or more communication protocols which follow an open standard.[1] As an identity on the fediverse, users are able to post text and other media, or to follow posts by other identities.[2] In some cases, users can show or share data (video, audio, text, and other files) publicly or to a selected group of identities and allow other identities to edit other users\' data (such as a calendar or an address book). from <a href="https://en.wikipedia.org/wiki/Fediverse">https://en.wikipedia.org/wiki/Fediverse</a> </p>
</blockquote>
<p>Pro naše účely není tento aspekt úplně klíčový.</p>
<p>Co vlastně získáme tím, že zprovozníme vlastní Matrix server?</p>
<ul>
<li>Komunikace používá end-to-end šifrování. Nikdo kromě příjemce by neměl být schopný zprávu vidět.</li>
<li>Data leží na našem &quot;železe&quot; a v námi kontrolovaném operačním systému. Sami si můžete překontrolovat jak a jaká data jsou v databázi ukládána.</li>
<li>Starou dobrou registraci s uživatelským jménem a heslem. Nejsou potřeba žádné emaily nebo telefonní čísla.</li>
<li>Nikdo probíhající komunikaci &quot;nefízluje&quot;.</li>
<li>Kód je open source. Každý do něho může nahlédnout. Možnost úmyslného zanešení nějakého škodlivého kusu kódu je hodně malá. Komunita by jim to brzy omlátila o hlavu.</li>
<li>Máte na výběr z vícero klientů. I když tohle může být někdy i negativum než pozitivum.</li>
<li>Moderní klienti moc nezaostávají za předními hráči na trhu. Ano jde poznat, že do toho nebylo nasypáno tolik peněz a „user experience“ není tak „smooth“. To ale nic nemění na tom, že můžete posílat zprávy, fotky, videa, emoji, nálepky, gify nebo provádět video telefonáty. Všechno je technicky funkční.</li>
<li>Je možné provozovat komunikaci s jednotlivými lidmi, skupinové komunikace nebo vytvářet místnosti.</li>
</ul>
<p>Výhod se najde asi ještě více, ale tou nejdůležitější vlastní kontrola.</p>
<p>Nevýhod se najde taky dost. Vůbec samotné rozeběhnutí vyžaduje lehce technický „skill“. Plus věci okolo jako domény, reverzní proxy atd.</p>
<p>Tak a teď teda k tomu co a jak je potřeba rozeběhnout.</p>
<p>Rozeběhnout to můžete skoro na čemkoliv, ale já pro naše účely použil RPi 3B+ s SSD diskem. Pro běh jednotlivých služeb použijeme Docker a Docker-Compose. Jak nainstalovat Docker <a href="http://wordpress.hardwired.dev/instalace-dockeru/" title="je popsáno v jiném článku">je popsáno v jiném článku</a> na tomto blogu.</p>
<p>Náš stack obsahje následující Docker obrazy.</p>
<ul>
<li>portainer/portainer-ce:latest</li>
<li>matrixdotorg/synapse:latest</li>
<li>postgres:14</li>
<li>vectorim/element-web:latest</li>
</ul>
<p><a href="https://www.portainer.io/" title="Portainer">Portainer</a> slouží jen pro pohodlnější správu Docker kontejnerů.</p>
<p>Jako <a href="https://matrix.org/" title="Matrix">Matrix</a> server použijeme <a href="https://github.com/matrix-org/synapse" title="Synapse">Synapse</a>. Je to implementace Matrix serveru v Pythonu.</p>
<p>Postgres 14 bude naše databáze. V základu používá Synapse Sqlite3, ale pokud máme tu možnost, bude lepší použít Postgres.</p>
<p><a href="https://element.io/" title="Element">Element</a> je webový klient pro Matrix server.</p>
<p>V domovském adresáři si vytvoříme složku matrix-stack a začneme skládat Docker-Compose soubor.</p>
<pre><code class="language-shell">cd ~
mkdir matrix-stack
nano ./matix-stack/docker-compose.yml</code></pre>
<pre><code class="language-yaml">version: &#039;3.3&#039;

services:
  portainer:
    container_name: portainer
    image: portainer/portainer-ce:latest
    restart: always
    ports:
      - &quot;9000:9000&quot;
    volumes:
      - portainer_data:/data
      - /var/run/docker.sock:/var/run/docker.sock

  synapse:
    container_name: synapse
    image: matrixdotorg/synapse:latest
    restart: always
    ports:
      - 8008:8008
    volumes:
      - /var/docker_data/matrix:/data

  postgres:
    container_name: postgres
    image: postgres:14
    restart: unless-stopped
    ports:
      - &quot;5432:5432&quot;
    volumes:
     - /var/docker_data/postgresdata:/var/lib/postgresql/data

    environment:
     - POSTGRES_DB=synapse
     - POSTGRES_USER=synapse
     - POSTGRES_PASSWORD=SUPERSECRETLONGPASSWORD
     - POSTGRES_INITDB_ARGS=--lc-collate C --lc-ctype C --encoding UTF8

  element:
    container_name: element
    image: vectorim/element-web:latest
    restart: unless-stopped
    ports:
      - &quot;80:80&quot;
    volumes:
      - /var/docker_data/element-config.json:/app/config.json

volumes:
  portainer_data:</code></pre>
<p>Pro Synapse místo Sqlite3 použijeme Postgre databázi. Víceméně se standardním nastavením kromě jedné věci.</p>
<pre><code class="language-yaml">POSTGRES_INITDB_ARGS=--lc-collate C --lc-ctype C --encoding UTF8</code></pre>
<p>Matrix vyžaduje aby <strong>LC_COLLATE</strong> a <strong>LC_TYPE</strong> nastaveny na <strong>C</strong>. Má to co do činění s akceptováním různých znakových sad.</p>
<blockquote>
<p>When LC_CTYPE is C or POSIX, any character set is allowed, but for other settings of LC_CTYPE there is only one character set that will work correctly. Since the LC_CTYPE setting is frozen by initdb, the apparent flexibility to use different encodings in different databases of a cluster is more theoretical than real, except when you select C or POSIX locale (thus disabling any real locale awareness).</p>
</blockquote>
<p>Před tím, než pustíme <strong>docker-compose</strong>, je potřeba udělat ještě pár věcí.</p>
<p>Potřebujeme vygenerovat konfigurační soubor pro <strong>Synapse</strong> server.</p>
<pre><code class="language-bash">docker run -it --rm \
    -v &quot;/var/docker_data/matrix:/data&quot; \
    -e SYNAPSE_SERVER_NAME=matrix.YOUR_DOMAIN.com \
    -e SYNAPSE_REPORT_STATS=no \
    matrixdotorg/synapse:latest generate</code></pre>
<p>A v nově vygenerovaném souboru předělat Sqlite3 na Postgre. Stačí zakomentovat sekci s Sqlite3 a vložit novou.</p>
<pre><code class="language-yaml">database:
  name: psycopg2
  args:
    user: synapse
    password: SUPERSECRETLONGPASSWORD
    database: synapse
    host: postgres
    cp_min: 5
    cp_max: 10</code></pre>
<p>Potom je potřeba vytořit konfigurační soubor pro Element.</p>
<pre><code class="language-bash">sudo nano /etc/docker_data/element-config.yaml</code></pre>
<pre><code class="language-json">{
    &quot;default_server_config&quot;: {
        &quot;m.homeserver&quot;: {
            &quot;base_url&quot;: &quot;https://matrix.YOUR_DOMAIN.com&quot;,
            &quot;server_name&quot;: &quot;matrix.YOUR_DOMAIN.com&quot;
        },
        &quot;m.identity_server&quot;: {
            &quot;base_url&quot;: &quot;https://vector.im&quot;
        }
    },
    &quot;brand&quot;: &quot;Element&quot;,
    &quot;integrations_ui_url&quot;: &quot;https://scalar.vector.im/&quot;,
    &quot;integrations_rest_url&quot;: &quot;https://scalar.vector.im/api&quot;,
    &quot;integrations_widgets_urls&quot;: [
        &quot;https://scalar.vector.im/_matrix/integrations/v1&quot;,
        &quot;https://scalar.vector.im/api&quot;,
        &quot;https://scalar-staging.vector.im/_matrix/integrations/v1&quot;,
        &quot;https://scalar-staging.vector.im/api&quot;,
        &quot;https://scalar-staging.riot.im/scalar/api&quot;
    ],
    &quot;hosting_signup_link&quot;: &quot;https://element.io/matrix-services?utm_source=element-web&amp;utm_medium=web&quot;,
    &quot;bug_report_endpoint_url&quot;: &quot;https://element.io/bugreports/submit&quot;,
    &quot;uisi_autorageshake_app&quot;: &quot;element-auto-uisi&quot;,
    &quot;showLabsSettings&quot;: true,
    &quot;piwik&quot;: {
        &quot;url&quot;: &quot;https://piwik.riot.im/&quot;,
        &quot;siteId&quot;: 1,
        &quot;policyUrl&quot;: &quot;https://element.io/cookie-policy&quot;
    },
    &quot;roomDirectory&quot;: {
        &quot;servers&quot;: [
            &quot;matrix.org&quot;,
            &quot;gitter.im&quot;,
            &quot;libera.chat&quot;
        ]
    },
    &quot;enable_presence_by_hs_url&quot;: {
        &quot;https://matrix.org&quot;: false,
        &quot;https://matrix-client.matrix.org&quot;: false
    },
    &quot;terms_and_conditions_links&quot;: [
        {
            &quot;url&quot;: &quot;https://element.io/privacy&quot;,
            &quot;text&quot;: &quot;Privacy Policy&quot;
        },
        {
            &quot;url&quot;: &quot;https://element.io/cookie-policy&quot;,
            &quot;text&quot;: &quot;Cookie Policy&quot;
        }
    ],
    &quot;hostSignup&quot;: {
      &quot;brand&quot;: &quot;Element Home&quot;,
      &quot;cookiePolicyUrl&quot;: &quot;https://element.io/cookie-policy&quot;,
      &quot;domains&quot;: [
          &quot;matrix.org&quot;
      ],
      &quot;privacyPolicyUrl&quot;: &quot;https://element.io/privacy&quot;,
      &quot;termsOfServiceUrl&quot;: &quot;https://element.io/terms-of-service&quot;,
      &quot;url&quot;: &quot;https://ems.element.io/element-home/in-app-loader&quot;
    },
    &quot;sentry&quot;: {
        &quot;dsn&quot;: &quot;https://029a0eb289f942508ae0fb17935bd8c5@sentry.matrix.org/6&quot;,
        &quot;environment&quot;: &quot;develop&quot;
    },
    &quot;posthog&quot;: {
        &quot;projectApiKey&quot;: &quot;phc_Jzsm6DTm6V2705zeU5dcNvQDlonOR68XvX2sh1sEOHO&quot;,
        &quot;apiHost&quot;: &quot;https://posthog.element.io&quot;
    },
    &quot;features&quot;: {
        &quot;feature_spotlight&quot;: true
    },
    &quot;map_style_url&quot;: &quot;https://api.maptiler.com/maps/streets/style.json?key=fU3vlMsMn4Jb6dnEIFsx&quot;
}</code></pre>
<p>V horní části souboru upravte pro vaši doménu.</p>
<pre><code class="language-json">&quot;default_server_config&quot;: {
        &quot;m.homeserver&quot;: {
            &quot;base_url&quot;: &quot;https://matrix.YOUR_DOMAIN.com&quot;,
            &quot;server_name&quot;: &quot;matrix.YOUR_DOMAIN.com&quot;
        },
        &quot;m.identity_server&quot;: {
            &quot;base_url&quot;: &quot;https://vector.im&quot;
        }
    }</code></pre>
<p>Tak a teď už můžeme pustit ten docker. Přesuneme se do složky s Docker-Compose souborem a spustíme příkaz docker-compose.</p>
<pre><code class="language-bash">cd ~/matrix-stack
docker-compose up -d</code></pre>
<p>Pokud všechno proběhne dle plánu, tak se můžete zkusit přihlásit do Portaineru a měli byste vidět něco takového.</p>
<p><img decoding="async" src="http://wordpress.hardwired.dev/wp-content/uploads/2022/09/matrix-containers.jpg" alt="" /></p>
<p>Teď se potřebujeme připojit do docker kontejneru kde beží Synapse odkud budeme přes příkaz <code>register_new_matrix_user</code> přidávat uživatele.</p>
<pre><code class="language-bash">docker exec -it synapse /bin/bash</code></pre>
<pre><code class="language-bash">register_new_matrix_user -c /data/homeserver.yaml http://127.0.0.1:8008</code></pre>
<p>Příkaz vás následně navede co vyplnit.</p>
<p>V tomto bodě nám už vše běží a máme vytvořeného prvního uživatele. Pokud se přes prohlížeč podíváte na <code>http://&lt;ip-adresa-vaseho-stroje&gt;:8008</code> uvidíte že Matrix server běži.</p>
<p><img decoding="async" src="http://wordpress.hardwired.dev/wp-content/uploads/2022/09/matirx-is-running.jpg" alt="" /></p>
<p>Určitě se nechceme vždy připojovat na <code>http://&lt;ip-adresa-vaseho-stroje&gt;:8008</code>. To by bylo poněkud nepohodlné a pravděpodobně by to fungovalo jen v lokální síti. Ještě bychom mohli přesměrovat porty na router, ale to je prašť jako uhoď.</p>
<p>Lepší bude použít doménu jako <code>matrix.nasedomena.eu</code> a samozřejmě <code>https</code> protokol, aby naše data po internetu nelítala jen tak. </p>
<p>Bude to chtít zařídit několik věcí. </p>
<ul>
<li>Je potřeba mít veřejnou statickou IP.</li>
<li>Koupit nějakou doménu.</li>
<li>Vyřídit si certifikát. Například přes službu <a href="https://letsencrypt.org/" title="Let&#039;s Encrypt">Let's Encrypt</a>.</li>
<li>Zprovoznit reverzní proxy, která bude zpracovávat příchozí požadavky. Pro tento článek použijeme webový server <a href="https://www.nginx.com/" title="Nginx">Nginx</a> jako reverzní proxy. Jak zprovoznit Nginx jako reverzní proxy najdete v <a href="http://wordpress.hardwired.dev/nginx-jako-reverzni-proxy/" title="článku na tomto webu">článku na tomto webu</a>.</li>
</ul>
<p>Budeme chtít používat <code>https://matrix.nasedomena.eu</code> a <code>https://element.nasedomena.eu</code>.</p>
<p>Pro <code>element.nasedomena.eu</code> bude konfigurační soubor pro Nginx vypadat nějak takhle.</p>
<pre><code> server {
    listen 80;
    server_name element.nasedomena.eu;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;

    server_name element.nasedomena.eu;

    ssl on;
    ssl_certificate /etc/letsencrypt/live/nasedomena.eu/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/nasedomena.eu/privkey.pem; # managed by Certbot

    location / {
        proxy_pass http://192.168.1.111:80;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection &#039;upgrade&#039;;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}</code></pre>
<p>Veškerý nešifrovaný provoz směrující na <code>element.nasedomena.eu</code> bude přesměrován na šifrovaný.</p>
<p>Pro samotný Matrix server je nutné do konfigurace přidat ještě pár věcí.</p>
<pre><code>server {
    listen 80;
    server_name matrix.nasedomena.eu;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    listen 8448 ssl http2 default_server;
    listen [::]:8448 ssl http2 default_server;

    server_name matrix.nasedomena.eu;

    ssl on;
    ssl_certificate /etc/letsencrypt/live/nasedomena.eu/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/nasedomena.eu/privkey.pem; # managed by Certbot

     location /.well-known/matrix/client {
                return 200 &#039;{&quot;m.server&quot;: {&quot;base_url&quot;: &quot;matrix.nasedomena.eu:443&quot;}}&#039;;
                default_type application/json;
                add_header Access-Control-Allow-Origin *;
        }

    location /.well-known/matrix/server {
                default_type application/json;
                add_header Access-Control-Allow-Origin *;
                return 200 &#039;{&quot;m.server&quot;:&quot;matrix.nasedomena.eu:443&quot;}&#039;;
        }

    location / {
        proxy_pass http://192.168.1.111:8008;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection &#039;upgrade&#039;;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}</code></pre>
<p>Jestli máme všechno dobře nakonfigurováno, můžeme zkusit <code>https://element.nasedomena.eu</code>. Poběží tu webový klient pro Matrix. Budeme muset upravit domovský server na náš <code>matrix.nasedomena.eu</code>, protože v základu je tam nastavený <code>matrix.org</code>. Poté se můžeme přihlásit jako uživatel, kterého jsme vytvořili v jednom z předchozích kroků.</p>
<p><img decoding="async" src="http://wordpress.hardwired.dev/wp-content/uploads/2022/09/element-login.jpg" alt="" /></p>
<p>K připojení můžete samozřejmě využít jakéhokoliv klienta Matrixu. Přidejte další další uživatele pomocí kroků výše a můžete začít komunikovat naprosto soukromě. Komunikace s dalšími uživateli v rámci Fediverse je také možná. Samotný Synapse jde různě nakonfigurovat. Můžete například povolit registraci uživatelů přes klienty a další možnosti. Konfigurace Synapse ale není náplní tohoto článku.</p>

<div class="twitter-share"><a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fwww.hardwired.dev%2F2022%2F09%2F15%2Fself-hosted-matrix-server%2F&#038;via=hessevalentino" class="twitter-share-button">Tweet</a></div><p>The post <a href="https://www.hardwired.dev/2022/09/15/self-hosted-matrix-server/">Self hosted Matrix server</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Nginx jako reverzní proxy</title>
		<link>https://www.hardwired.dev/2022/09/12/nginx-jako-reverzni-proxy/</link>
		
		<dc:creator><![CDATA[John Doe]]></dc:creator>
		<pubDate>Mon, 12 Sep 2022 10:14:55 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[raspberry]]></category>
		<category><![CDATA[reverse-proxy]]></category>
		<category><![CDATA[rpi]]></category>
		<guid isPermaLink="false">https://hessevalentino.cz/?p=273</guid>

					<description><![CDATA[<p>Máme ve vnitřní síti několik služeb, ke kterým chceme přistupovat z internetu nebo někomu chceme umožnit přístup. Máme koupenou doménu &#62;&#62;&#62;</p>
<p>The post <a href="https://www.hardwired.dev/2022/09/12/nginx-jako-reverzni-proxy/">Nginx jako reverzní proxy</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="bsf_rt_marker"></div><p>Máme ve vnitřní síti několik služeb, ke kterým chceme přistupovat z internetu nebo někomu chceme umožnit přístup. Máme koupenou doménu a nechceme zadávat<strong> example.com/xyz</strong> nebo <strong>example.com:63268</strong> pro přístup ke službě běžící na lokální síti.</p>
<p><span id="more-273"></span></p>
<p>Jedno z možných řešení je použití Nginx jako reverzní proxy. To nám umožní používat sub domény pro přístup k lokálním službám. Například ke Grafaně zobrazující měření z meteostanice můžeme přistupovat pomocí <strong>grafana.example.com</strong>.</p>
<p>Na většině linuxových systémů lze jednoduše nainstalovat Nginx. Například na Ubuntu pomocí balíčkovacího systému APT.</p>
<pre><code class="language-bash">sudo apt install nginx</code></pre>
<p>Po úspěšné instalaci bude Nginx naslouchat na portu 80. Když zadáte do prohlížeče adresu stroje na kterém běží, měli byste vidět klasickou <em>Welcome to nginx!</em> stránku.</p>
<p>Konfigurační soubory Nginx se nacházejí v <strong>/etc/nginx</strong>. Nás budou zajímat dvě složky <strong>/etc/nginx/sites-available</strong> a <strong>/etc/nginx/sites-enabled</strong>. <strong>sites-available</strong> obsahuje konfigurační soubory  a <strong>sites-enabled</strong> symlinky na soubory v <strong>sites-available</strong>.  To co je v <strong>sites-enabled</strong> je to, co je používáno.</p>
<p>Mějme stroj na kterém běží <strong>Nginx</strong> na <strong>192.168.1.2</strong> a stroj na kterém běží <strong>Grafana</strong> na <strong>192.168.1.22</strong>. Předpokládejme, že jsme <strong>Grafanu</strong> úspěšně rozeběhli na <strong>192.168.1.22:8080</strong>. Náš předpoklad je, že chceme na službu přistupovat přes <strong>grafana.example.com</strong>.</p>
<p>K tomu budeme muset vytvořit konfigurační soubor v <strong>/etc/nginx/sites-available</strong>. Jméno toho souboru je libovolné, ale zpravidla se používá název domény.</p>
<pre><code class="language-bash">sudo nano /etc/nginx/sites-available/grafana.example.com</code></pre>
<p>V konfiguračním souboru budeme mít dvě sekce. Jedna pro obsluhu nešifrované komunikace na portu <strong>80</strong> a druhou šifrovanou na portu <strong>443</strong>. Předpokládáme, že nechceme nešifrovanou verzi komunikace. V dnešní době je už možné jednoduše získat certifikát, například přes službu <strong>LetsEncrypt</strong>.</p>
<p>První sekce pro obsluhu požadavku na port <strong>80</strong> řeší pouze přesměrování na port <strong>443</strong>.</p>
<pre><code>server {
    listen 80;
    server_name grafana.example.com;
    return 301 https://$host$request_uri;
}</code></pre>
<p>Druhá sekce řeší požadavek na portu <strong>443</strong> a samotné vyřízení požadavku s <strong>Grafanou</strong> na stroji <strong>192.168.1.22</strong>.</p>
<pre><code>server {
    listen 443;

    server_name grafana.example.com;

    ssl on;
    ssl_certificate /etc/nginx/ssl/example.com.cert;
    ssl_certificate_key /etc/nginx/ssl/example.com.key;

    location / {
        proxy_pass http://192.168.1.22:8080;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection &#039;upgrade&#039;;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}</code></pre>
<p>Protože se jedná o šifrovanou komunikaci přes <strong>HTTPS</strong> protokol je nutné přidat cesty k certifikátům.</p>
<p>Kompletní soubor by mohl vypadat nějak takto.</p>
<pre><code>server {
    listen 80;
    server_name grafana.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443;

    server_name grafana.example.com;

    ssl on;
    ssl_certificate /etc/nginx/ssl/example.com.cert;
    ssl_certificate_key /etc/nginx/ssl/example.com.key;

    location / {
        proxy_pass http://192.168.1.22:8080;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection &#039;upgrade&#039;;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}</code></pre>
<p>Poté co máme konfiguraci uloženou v <strong>sites-available</strong> potřebujeme udělat symlink do adresáře<strong> sites-enabled</strong>. Tím konfiguraci aktivujeme a po restartu ji Nginx bude brát v potaz.</p>
<pre><code class="language-shell">sudo ln -s /etc/nginx/sites-available/grafana.example.com /etc/nginx/sites-enabled/</code></pre>
<p>Předtím než restartujeme Nginx je dobré nechat Nginx zkontrolovat jestli je konfigurace OK.</p>
<pre><code class="language-shell">nginx -t</code></pre>
<p>Pokud je vše v pořádku stačí Nginx restartovat.</p>
<pre><code class="language-bash">sudo systemctl restart nginx</code></pre>
<p>Od této chvíle <strong>Nginx</strong> na <strong>192.168.1.2</strong> přijímá požadavky a pokud dojde požadavek na<strong> grafana.example.com</strong>, začne komunikovat s <strong>Grafanou</strong> na <strong>192.168.1.22:8080</strong>.</p>
<hr />
<p>Pokud to rozjíždíte doma, tak se s pravděpodobně nacházíte za domácím routerem. (pravděpodobnost hraničící s jistotou <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /> ) Tam je nutné přesměrovat porty 80 a 443 na stroj s Nginx. A další nutná věc je samozřejmě veřejná IP. Bez té to bude docela naprd. <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>

<div class="twitter-share"><a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fwww.hardwired.dev%2F2022%2F09%2F12%2Fnginx-jako-reverzni-proxy%2F&#038;via=hessevalentino" class="twitter-share-button">Tweet</a></div><p>The post <a href="https://www.hardwired.dev/2022/09/12/nginx-jako-reverzni-proxy/">Nginx jako reverzní proxy</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Instalace Dockeru</title>
		<link>https://www.hardwired.dev/2022/09/11/instalace-dockeru/</link>
		
		<dc:creator><![CDATA[John Doe]]></dc:creator>
		<pubDate>Sun, 11 Sep 2022 17:50:48 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Raspberry]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[docker-compose]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[raspberry]]></category>
		<category><![CDATA[rpi]]></category>
		<guid isPermaLink="false">https://hessevalentino.cz/?p=263</guid>

					<description><![CDATA[<p>Rychlý přehled jak nainstalovat Docker a Docker-Compose. Vždy je dobré systém aktualizovat. sudo apt update &#38;&#38; sudo apt upgrade -y &#62;&#62;&#62;</p>
<p>The post <a href="https://www.hardwired.dev/2022/09/11/instalace-dockeru/">Instalace Dockeru</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="bsf_rt_marker"></div><p>Rychlý přehled jak nainstalovat Docker a Docker-Compose.</p>
<p>Vždy je dobré systém aktualizovat.</p>
<pre><code class="language-shell">sudo apt update &amp;&amp; sudo apt upgrade -y</code></pre>
<p>Instalace dockeru.</p>
<pre><code class="language-shell">curl -sSL https://get.docker.com | sh</code></pre>
<p>Povolíme uživateli používat Docker. V opačném případě je nutné používat docker jako root. Přidáme uživatele do skupiny docker.</p>
<pre><code class="language-shell">sudo usermod -aG docker &lt;user_name&gt;</code></pre>
<p>Nainstalujeme Docker-Compose.</p>
<pre><code class="language-shell">sudo apt install libffi-dev libssl-dev python3-dev python3 python3-pip -y
sudo pip3 install docker-compose</code></pre>
<p>Zapneme docker po startu systému.</p>
<pre><code class="language-shell">sudo systemctl enable docker</code></pre>
<p>Tadá, je možné používat Docker a Docker-Compose.</p>
<hr />
<p>Pokud vám nedělá dobře spouštět &quot;on demand&quot; stažené skripty, můžete vše udělat pěkně postupně.</p>
<pre><code class="language-bash">curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo &quot;deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable&quot; | sudo tee /etc/apt/sources.list.d/docker.list &gt; /dev/null

sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release -y

sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io -y

sudo usermod -aG docker $USER</code></pre>

<div class="twitter-share"><a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fwww.hardwired.dev%2F2022%2F09%2F11%2Finstalace-dockeru%2F&#038;via=hessevalentino" class="twitter-share-button">Tweet</a></div><p>The post <a href="https://www.hardwired.dev/2022/09/11/instalace-dockeru/">Instalace Dockeru</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Sestavte si vlastní web server Raspberry Pi NGINX</title>
		<link>https://www.hardwired.dev/2022/06/02/raspberry-web-server/</link>
		
		<dc:creator><![CDATA[Valentino Hesse OK2HSS]]></dc:creator>
		<pubDate>Thu, 02 Jun 2022 19:57:28 +0000</pubDate>
				<category><![CDATA[Raspberry]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[raspberry]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[web server]]></category>
		<category><![CDATA[webserver]]></category>
		<category><![CDATA[www]]></category>
		<guid isPermaLink="false">http://212.96.175.204/?p=5</guid>

					<description><![CDATA[<p>Jak nastavit webový server NGINX na vašem Raspberry Pi a proč právě NGINX? Je to lepší alternativa k Apache pro &#62;&#62;&#62;</p>
<p>The post <a href="https://www.hardwired.dev/2022/06/02/raspberry-web-server/">Sestavte si vlastní web server Raspberry Pi NGINX</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="bsf_rt_marker"></div><p>Jak nastavit webový server NGINX na vašem Raspberry Pi a proč právě NGINX? Je to lepší alternativa k Apache pro Raspberry Pi z několika různých důvodů.</p>
<p>Některé z důvodů, proč je NGINX na Raspberry Pi lepší, je ten, že má mnohem nižší využití paměti a obecně nižší využití CPU, což znamená, že z omezených zdrojů vašeho Raspberry Pi můžete získat více.</p>
<p>Ukážeme si také jak nakonfigurovat NGINX tak, aby využíval PHP-FPM, což vyžaduje trochu extra konfigurace, aby se dalo zprovoznit na rozdíl od PHP pro Apache.</p>
<p><span class="">I když je NGINX dobrou volbou pro RPI a vlastní server mi tento raspberry server budeme nakonec využívat pro provoz a hostování našeho blogu běžícím na Wordpresu stejně jako tento web který běží z Raspberry Pi 3 B+. </span></p>
<p>Zároveň doporučuji pořídit aktivní chlazení o kterém píši zde. Vše je kompatibilní s modelem pro 3D tisk který mám <a href="https://www.printables.com/cs/model/223500-vertex-horizontal-raspberry-pi-3b-stand-ssd">zde</a>.</p>
<h3><strong>Co budeme potřebovat?</strong></h3>
<ul>
<li>Raspberry Pi (3B+ nebo RPI 4)</li>
<li>SD kartu</li>
<li>Napájecí zdroj pro Raspberry</li>
</ul>
<p><strong>Pokud to bude myslet s svým serverem vážně doporučuji koupit SSD disk cca 120GB a redukci ze SATA na USB. Posunete tím svůj server o úroveň výš a vyhnete se problémům s degradací paměťové karty při dlouhodobém zápisu a mazaní menších souborů. </strong></p>
<p>V případě že jste zvolili verzi s <strong>SSD</strong> a <strong>RPI3b+ budete muset upravit rom pamět na vasem RPI. Jak to udelat zjistíte v tomto videu.<br />
</strong><br />
<iframe loading="lazy" title="YouTube video player" src="https://www.youtube.com/embed/ubnwvxF3Klc" width="560" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>
<p>U <strong>Raspberry Pi 4</strong> toto řešit nemusíte již je připraveno na boot z <strong>USB</strong> tedy z vašeho <strong>SSD</strong> disku. V tomto přídě vám doporučím můj vlastní <strong>3D model</strong> pro efektní upevnění <strong>SSD</strong> a <strong>RPI</strong> tak aby váš server i dobře vypadal a mohl si v klidu stát na pracovním stole. Model najdete na mém profilu <a title="Printables WERTEX Hesse Valentino" href="https://www.printables.com/cs/model/223500-vertex-horizontal-raspberry-pi-3b-stand-ssd" target="_blank" rel="noopener">Printables.com</a></p>
<p><img loading="lazy" decoding="async" class="alignnone size-medium wp-image-203" src="http://wordpress.hardwired.dev/wp-content/uploads/2022/06/img_2522-300x225.webp" alt="" width="300" height="225" srcset="https://www.hardwired.dev/wp-content/uploads/2022/06/img_2522-300x225.webp 300w, https://www.hardwired.dev/wp-content/uploads/2022/06/img_2522-1024x768.webp 1024w, https://www.hardwired.dev/wp-content/uploads/2022/06/img_2522-768x576.webp 768w, https://www.hardwired.dev/wp-content/uploads/2022/06/img_2522.webp 1280w" sizes="auto, (max-width: 300px) 100vw, 300px" /> <img loading="lazy" decoding="async" class="alignnone size-medium wp-image-200" src="http://wordpress.hardwired.dev/wp-content/uploads/2022/06/img_2523-300x225.webp" alt="" width="300" height="225" srcset="https://www.hardwired.dev/wp-content/uploads/2022/06/img_2523-300x225.webp 300w, https://www.hardwired.dev/wp-content/uploads/2022/06/img_2523-1024x768.webp 1024w, https://www.hardwired.dev/wp-content/uploads/2022/06/img_2523-768x576.webp 768w, https://www.hardwired.dev/wp-content/uploads/2022/06/img_2523.webp 1280w" sizes="auto, (max-width: 300px) 100vw, 300px" /></p>
<p>Pokud tedy již máme všechno připraveno můžeme se pustit do instalace a zprovoznění.</p>
<h3><strong>Instalace NGINX</strong></h3>
<p>Než začneme s nastavením webového serveru NGINX na Raspberry Pi, musíme se nejprve ujistit, že je naše Raspberry Pi aktuální spuštěním následujících dvou příkazů.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >sudo apt update</textarea></pre>
</div>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >sudo apt upgrade</textarea></pre>
</div>
<p><span class="goog-text-highlight">Měli bychom také spustit následující příkaz k odinstalaci Apache2, protože existuje šance, že je ve vašem systému předinstalován.</span></p>
<p>Pokud tak neučiníte, může dojít k selhání instalace, protože se automaticky spouští a využívá <strong>port<code>80</code></strong>  , protože máme v úmyslu používat NGINX jako webový server a rozhodli jsme se jej odstranit ze systému.</p>
<p>Tento krok můžete přeskočit, pokud jste si jisti, že Apache2 již není na vašem Raspberry Pi nainstalován.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >sudo apt remove apache2</textarea></pre>
</div>
<p>Nakonec nainstalujme NGINX na naše Raspberry Pi spuštěním následujícího příkazu na vašem Raspberry Pi.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >sudo apt install nginx</textarea></pre>
</div>
<p>Nyní nainstalovaný NGINX můžeme spustit. Zadejte následující příkaz do terminálu pro spuštění webového serveru na našem Raspberry Pi.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >sudo systemctl start nginx</textarea></pre>
</div>
<p><span class="">Když je webový server NGINX nyní spuštěn, měli bychom nyní získat naši místní IP adresu. </span><span class="">Děláme to proto, abychom mohli otestovat, zda náš webový server funguje ze samostatného webového prohlížeče. </span>Použijte příkaz hostname k získání místní IP adresy vašeho Raspberry Pi.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >hostname -I</textarea></pre>
</div>
<p><span class="">Nyní, když máme po ruce místní IP adresu našeho Raspberry Pi, otevřeme adresu v libovolném webovém prohlížeči. </span>Stačí přejít na místní IP adresu, kterou jste získali pomocí <code>hostname -I</code>. V mém případě bych šel do <code>http://192.168.0.143</code>.</p>
<p><span class="">Jakmile přejdete na adresu, měli byste vidět něco jako níže. </span>Nedělejte si starosti, pokud se zobrazí stránka Apache, protože někdy NGINX nepřepíše výchozí indexovou stránku Apache.</p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-206 size-full" src="http://wordpress.hardwired.dev/wp-content/uploads/2022/06/03-Nginx-screen.webp" alt="" width="717" height="528" srcset="https://www.hardwired.dev/wp-content/uploads/2022/06/03-Nginx-screen.webp 717w, https://www.hardwired.dev/wp-content/uploads/2022/06/03-Nginx-screen-300x221.webp 300w" sizes="auto, (max-width: 717px) 100vw, 717px" /></p>
<h3 id="configuring-nginx-for-php" class="lbb-section-break text-center mt-5"><strong><span class="">Konfigurace NGINX pro PHP</span></strong></h3>
<p><span class="">Na rozdíl od Apache nebude NGINX automaticky nastaven pro použití s ​​PHP. </span>Místo toho musíme provést změny v jeho konfiguračních souborech, aby se mohl načíst.</p>
<p>Budeme také muset používat PHP-FPM a ne standardní PHP kvůli způsobu, jakým funguje NGINX.</p>
<p>Než začneme s konfigurací PHP pro NGINX, musíme pokračovat a nainstalovat PHP 7.4 it a některé doporučené PHP moduly, které nám usnadní práci s rozsáhlejšími PHP skripty.</p>
<p>Než spustíte níže uvedený příkaz, ujistěte se, že používáte Raspbian Bullseye nebo novější. Vše můžete nainstalovat spuštěním příkazu níže.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >sudo apt install php7.4-fpm php7.4-mbstring php7.4-mysql php7.4-curl php7.4-gd php7.4-curl php7.4-zip php7.4-xml -y</textarea></pre>
</div>
<p><span class="">Pokud narazíte na </span>package not found <span class="">chybu, pak tato verze PHP není ve vaší aktuální verzi operačního systému Raspberry Pi dostupná. </span>Tuto chybu však můžete obejít přidáním úložiště PHP třetí strany do operačního systému.</p>
<p><span class="">S nyní nainstalovaným PHP-FPM můžeme provést požadované úpravy výchozího konfiguračního souboru NGINX.</span></p>
<p>Chcete-li začít upravovat výchozí konfigurační soubor, spusťte na svém Raspberry Pi následující příkaz.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >sudo nano /etc/nginx/sites-enabled/default</textarea></pre>
</div>
<p>V tomto souboru vyhledejte a nahraďte následující řádky.</p>
<p><strong>Najděte:</strong></p>
<p>[]index index.html index.htm;[/]</p>
<p><strong>Nahraďte:</strong></p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >index index.php index.html index.htm;</textarea></pre>
</div>
<p>Zde musíme přidat <code>index.php</code>do řádku indexu a to říká NGINX, aby rozpoznal <code>index.php</code>soubor jako možný index, přidáním na první místo v seznamu znamená, že bude vybrán přes <code>index.html</code>soubor.</p>
<p><strong>Najděte:</strong></p>
<p><strong>#location ~ \.php$ { # include snippets/fastcgi-php.conf;</strong><br />
<strong>#</strong><br />
<strong># With php5-cgi alone: # fastcgi_pass 127.0.0.1:9000; </strong><br />
<strong># </strong><br />
<strong># With php5-fpm: # fastcgi_pass unix:/var/run/php5-fpm.sock; #}</strong></p>
<p><strong>Nahraďte: </strong></p>
<p><strong>#location ~ \.php$ { </strong><br />
<strong>#include snippets/</strong><br />
<strong>#fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; </strong><br />
<strong>#}</strong></p>
<p><span class="">Tento kód nastaví NGINX ke zpracování </span><code>.php</code><span class="">souborů jejich předáním do PHP-FPM.</span></p>
<p>Po dokončení můžete uložit a ukončit stisknutím <kbd>CTRL</kbd>+ <kbd>X</kbd>a poté stisknutím <kbd>Y</kbd>a poté <kbd>ENTER</kbd>.</p>
<p>Dále v tomto tutoriálu serveru Raspberry Pi Nginx budeme muset říct NGINX, aby znovu načetl svou konfiguraci spuštěním následujícího příkazu.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >sudo systemctl reload nginx</textarea></pre>
</div>
<p><span class="">Nakonec otestujeme nastavení PHP zápisem velmi jednoduchého </span><code>index.php</code><span class="">souboru do našeho </span><code>/var/www/html</code><span class="">adresáře. </span>Spuštěním následujícího příkazu vytvořte a začněte upravovat náš <code>index.php</code>soubor.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >sudo nano /var/www/html/index.php</textarea></pre>
</div>
<p>Do tohoto souboru přidejte následující řádek kódu.</p>
<div class="my-syntax-highlighter">
<pre><textarea id="mshighlighter" class="mshighlighter" language="shell" name="mshighlighter" >&lt;?php phpinfo(); ?&gt;</textarea></pre>
</div>
<p><span class="">Jakmile je vše hotovo, můžeme uložit a ukončit stisknutím </span><kbd>CTRL</kbd><span class="">+ , </span><kbd>X</kbd><span class="">poté </span><kbd>Y</kbd><span class="">a naposledy </span><kbd>ENTER</kbd><span class="">.</span></p>
<p>Nyní jako dříve v tutoriálu můžete přejít na IP adresu vašeho Raspberry Pi , tentokrát byste však měli vidět stránku zobrazující všechny informace o vaší verzi PHP a o tom, jaké moduly jsou aktuálně aktivní. Je to dobrá známka toho, že vaše instalace PHP funguje správně.</p>
<p>V tuto chvíli na našem <strong>Raspberry</strong> běží server <strong>NGINX</strong> a <strong>PHP</strong>. Příště si ukážeme jak nastavit <strong>SQL</strong></p>
<p>Zdroj: pimylifeup.com</p>
<p>&nbsp;</p>

<div class="twitter-share"><a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fwww.hardwired.dev%2F2022%2F06%2F02%2Fraspberry-web-server%2F&#038;via=hessevalentino&#038;related=hessevalentino%3AValentino%20Hesse%20OK2HSS" class="twitter-share-button">Tweet</a></div><p>The post <a href="https://www.hardwired.dev/2022/06/02/raspberry-web-server/">Sestavte si vlastní web server Raspberry Pi NGINX</a> first appeared on <a href="https://www.hardwired.dev">Hard Wired</a>.</p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
