video.xml 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294
  1. <?xml version='1.0' encoding='UTF-8'?>
  2. <rss version='2.0'
  3. xmlns:atom='http://www.w3.org/2005/Atom'
  4. xmlns:media="http://search.yahoo.com/mrss/"
  5. xmlns:activity='http://activitystrea.ms/spec/1.0/'
  6. xmlns:yt="http://www.youtube.com/xml/schemas/2015"
  7. >
  8. <channel>
  9. <atom:link href='https://tinydatacenter.com/' rel='self' type='application/rss+xml'/>
  10. <atom:link href='https://tinydatacenter.com/' rel='alternate'/>
  11. <title>
  12. Tiny DC
  13. </title>
  14. <yt:channelId>UCUMn9G0yzhQWXiRTOmPLXOg</yt:channelId>
  15. <link>
  16. https://tinydatacenter.com/
  17. </link>
  18. <description>
  19. Tiny Data Center
  20. </description>
  21. <lastBuildDate>
  22. Sat, 10 Mar 2018 04:06:36 +0000
  23. </lastBuildDate>
  24. <generator>
  25. clj-rss
  26. </generator>
  27. <item>
  28. <guid>
  29. https://tinydatacenter.com/2018-03-06-token-auth.html
  30. </guid>
  31. <link>
  32. https://tinydatacenter.com/2018-03-06-token-auth.html
  33. </link>
  34. <title>
  35. Token Auth
  36. </title>
  37. <description>
  38. &lt;p&gt;Similar to archive, but available to public. Focus on RSS and CDN.&lt;/p&gt;&lt;p&gt;RSS is simple with Cryogen via Tags. Can create a variety of channels, offering selection of readers.&lt;/p&gt;&lt;p&gt;Embed iframe. Sign content, or auth via YubiKey.&lt;/p&gt;&lt;p&gt;System login also possible in another episode: &lt;a href='2018-03-09-draft-u2f-login.html'&gt;here&lt;/a&gt;.&lt;/p&gt;
  39. </description>
  40. <pubDate>
  41. Tue, 06 Mar 2018 00:00:00 +0000
  42. </pubDate>
  43. <activity:object-type>video</activity:object-type>
  44. <yt:videoId>WvWR7m_4mdk</yt:videoId>
  45. <media:group>
  46. <media:title>VIDEO: RasPi Cam Test (Ocean Beach, SF)</media:title>
  47. <media:content url="https://ispooge.com/embed.html?#ispooge/raspi-cam-test" type="text/html" width="960" height="540"/>
  48. <media:thumbnail url="https://ispooge.com/media/videos/ispooge/raspi-cam-test.jpg" width="960" height="540"/>
  49. <media:description>DESCRIPTION: VIDEO: RasPi Cam Test (Ocean Beach, SF)</media:description>
  50. <media:community>
  51. <media:starRating count="129" average="4.78" min="1" max="5"/>
  52. <media:statistics views="5113"/>
  53. </media:community>
  54. </media:group>
  55. </item>
  56. <item xmlns:superlink="https://ispooge.com/schema/superlink.xsd">
  57. <guid>
  58. https://tinydatacenter.com/2018-03-06-online-publication.html
  59. </guid>
  60. <superlink:link>
  61. https://super.tinydatacenter.com/2018-03-06-online-publication.html
  62. </superlink:link>
  63. <link>
  64. https://tinydatacenter.com/2018-03-06-online-publication.html
  65. </link>
  66. <title>
  67. Online Publication (Blog/Vodcast, RSS)
  68. </title>
  69. <description>
  70. &lt;p&gt;Similar to archive, but available to public. Focus on RSS and CDN.&lt;/p&gt;&lt;p&gt;RSS is simple with Cryogen via Tags. Can create a variety of channels, offering selection of readers.&lt;/p&gt;&lt;p&gt;Embed iframe. Sign content, or auth via YubiKey.&lt;/p&gt;&lt;p&gt;Lots of hacking on this one, check the YT channel. Recent days.&lt;/p&gt;
  71. </description>
  72. <pubDate>
  73. Tue, 06 Mar 2018 00:00:00 +0000
  74. </pubDate>
  75. </item>
  76. <item>
  77. <guid>
  78. https://tinydatacenter.com/2018-03-06-archival-project.html
  79. </guid>
  80. <link>
  81. https://tinydatacenter.com/2018-03-06-archival-project.html
  82. </link>
  83. <title>
  84. Archival Project
  85. </title>
  86. <description>
  87. &lt;p&gt;Creates a fair use copy of online resources, such as your own YouTube playlists and videos.&lt;/p&gt;&lt;p&gt;Archived material is bundled into a maximally available static distribution format. At its most general and simple, one large incrementally built docker image can be created and distributed to a CDN.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;scripts/download-playlist.sh PLD5lYPY-uZpoqkKmEG0JmBx28ukXnRPc4
  88. &lt;/code&gt;&lt;/pre&gt;&lt;p&gt;readme (needs work):&lt;/p&gt;&lt;p&gt;https://github.com/harlanji/tinydatacenter/commit/4eb7d0372038eccbfa67db2e84c158050ec1f6a1#diff-e0c1975268c786c35b87dc4fd3e77c5d&lt;/p&gt;&lt;p&gt;make page for video: &lt;/p&gt;&lt;p&gt;https://github.com/harlanji/tinydatacenter/commit/4eb7d0372038eccbfa67db2e84c158050ec1f6a1#diff-6c24e0d1419d38dacca21f22f8f2f3a9&lt;/p&gt;
  89. </description>
  90. <pubDate>
  91. Tue, 06 Mar 2018 00:00:00 +0000
  92. </pubDate>
  93. </item>
  94. <item>
  95. <guid>
  96. https://tinydatacenter.com/2018-02-04-webserver.html
  97. </guid>
  98. <link>
  99. https://tinydatacenter.com/2018-02-04-webserver.html
  100. </link>
  101. <title>
  102. Webserver
  103. </title>
  104. <description>
  105. &lt;h1 id=&quot;simple&amp;#95;website&quot;&gt;Simple website&lt;/h1&gt;&lt;p&gt;(Not scalable)&lt;/p&gt;&lt;h3 id=&quot;needs&quot;&gt;Needs&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;Tiny Computer&lt;/li&gt;&lt;/ul&gt;&lt;h3 id=&quot;generate&quot;&gt;Generate&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Download and write RasPi SD card image&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;code&gt;xz -e hypriot-1.7.0.img.xz&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;dd if=hypriot-1.7.0.img of=/dev/sda bs=128KB conv=fsync&lt;/code&gt;&lt;/p&gt;&lt;p&gt;When this completes, the card is ready to boot up the RasPi.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Insert SD card into RasPi, boot up, and configure&lt;/li&gt;&lt;li&gt;Create a new directionctory with index file and start script&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;code&gt;cp tinydatacenter/starter-website.com mysite.com&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;cd mysite.com&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;code&gt;nano index.html&lt;/code&gt;&lt;/p&gt;&lt;p&gt;Nano is a text editor similar to MS Word, except it runs without a cursor or windows that can be moved around. It's called a &quot;Command line tool&quot;&lt;/p&gt;&lt;p&gt;If this is too uncomfortable we can skip sraight to installing a &lt;a href='desktop.html'&gt;desktop&lt;/a&gt; system so that you can use a normal window based text editor.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Create initial files&lt;ul&gt;&lt;li&gt;&lt;a href='https://github.com/harlanji/tinydatacenter/commit/e370eb5d5dfd8af3aba7cb5418defd2bb4081f05'&gt;GH commit&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Create scripts to start and stop the server&lt;ul&gt;&lt;li&gt;&lt;a href='https://github.com/harlanji/tinydatacenter/commit/c7f4bf429786fdc5f7b948df5012a4541c275ea7'&gt;GH commit&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h3 id=&quot;operate&quot;&gt;Operate&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Start website with start script&lt;/li&gt;&lt;/ol&gt;&lt;ol&gt;&lt;li&gt;Make a change&lt;/li&gt;&lt;li&gt;Rebuild and restart website&lt;/li&gt;&lt;/ol&gt;&lt;h3 id=&quot;destroy&quot;&gt;Destroy&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Stop script&lt;/li&gt;&lt;/ol&gt;
  106. </description>
  107. <pubDate>
  108. Sun, 04 Feb 2018 00:00:00 +0000
  109. </pubDate>
  110. <activity:object-type>video</activity:object-type>
  111. <media:group>
  112. <media:title>VIDEO: Show n Tell, Mar 30</media:title>
  113. <media:content url="https://ispooge.com/embed.html?#ispooge/showntell-mar3018" type="text/html" width="1280" height="720"/>
  114. <media:thumbnail url="https://ispooge.com/media/videos/ispooge/showntell-mar3018.jpg" width="1280" height="720"/>
  115. <media:description>DESCRIPTION: VIDEO: Show n Tell, Mar 30</media:description>
  116. <media:community>
  117. <media:starRating count="129" average="4.78" min="1" max="5"/>
  118. <media:statistics views="5113"/>
  119. </media:community>
  120. </media:group>
  121. </item>
  122. <item>
  123. <guid>
  124. https://tinydatacenter.com/2018-02-04-webserver-net.html
  125. </guid>
  126. <link>
  127. https://tinydatacenter.com/2018-02-04-webserver-net.html
  128. </link>
  129. <title>
  130. Networked Webserver
  131. </title>
  132. <description>
  133. &lt;h3 id=&quot;needs&quot;&gt;Needs&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;Simple Website&lt;/li&gt;&lt;li&gt;Internet Connection&lt;/li&gt;&lt;/ul&gt;&lt;h3 id=&quot;generate&quot;&gt;Generate&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Done :)&lt;/li&gt;&lt;/ol&gt;&lt;h3 id=&quot;operate&quot;&gt;Operate&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Configure port forwarding&lt;/li&gt;&lt;/ol&gt;&lt;h3 id=&quot;destroy&quot;&gt;Destroy&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Turn off port forwarding&lt;/li&gt;&lt;/ol&gt;
  134. </description>
  135. <pubDate>
  136. Sun, 04 Feb 2018 00:00:00 +0000
  137. </pubDate>
  138. <activity:object-type>video</activity:object-type>
  139. <media:group>
  140. <media:title>VIDEO: Video platforms compared</media:title>
  141. <media:content url="https://ispooge.com/embed.html?#ispooge/video-platforms-compared" type="text/html" width="1280" height="720"/>
  142. <media:thumbnail url="https://ispooge.com/media/videos/ispooge/video-platforms-compared.jpg" width="1280" height="720"/>
  143. <media:description>DESCRIPTION: VIDEO: Video platforms compared</media:description>
  144. <media:community>
  145. <media:starRating count="129" average="4.78" min="1" max="5"/>
  146. <media:statistics views="5113"/>
  147. </media:community>
  148. </media:group>
  149. </item>
  150. <item>
  151. <guid>
  152. https://tinydatacenter.com/2018-02-04-docker.html
  153. </guid>
  154. <link>
  155. https://tinydatacenter.com/2018-02-04-docker.html
  156. </link>
  157. <title>
  158. Docker
  159. </title>
  160. <description>
  161. &lt;p&gt;Docker is a tool that lets people create software packages that can be run on any system that supports Docker and the same processor architecture.&lt;/p&gt;&lt;h3 id=&quot;needs&quot;&gt;Needs&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;Website (connected to Internet optional)&lt;/li&gt;&lt;/ul&gt;&lt;h3 id=&quot;generate&quot;&gt;Generate&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Create a Dockerfile&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;The Dockerfile picks a base &quot;image&quot; and adds the necessary files needed to run the website. The base image should have the same software that you used to create your website with. After the first website, usually you create a Dockerfile right away that resembles a project that you've created before.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;FROM rpi-whatever
  162. WORKDIR /www
  163. ADD index.html index.html
  164. CMD &amp;#91;&amp;quot;python&amp;quot;, &amp;quot;-m&amp;quot; ,&amp;quot;SimpleHTTPServer&amp;quot;, &amp;quot;9090&amp;quot;, &amp;quot;.&amp;quot;&amp;#93;
  165. &lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&quot;operate&quot;&gt;Operate&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Build website with docker&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;code&gt;docker build -t mysite.com .&lt;/code&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Start website with docker&lt;/li&gt;&lt;/ol&gt;&lt;pre&gt;&lt;code&gt;docker run -d --restart always \
  166. --name mysite.com-www \
  167. mysite.com
  168. &lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This is a long command, so it's useful to put it into a script file. Let's call it &lt;code&gt;start.sh&lt;/code&gt;.&lt;/p&gt;&lt;p&gt;Script files have two extra parts, there is a top line that tells it which command to use to run (what you normally interact with on the screen is called &lt;code&gt;bash&lt;/code&gt;).&lt;/p&gt;&lt;pre&gt;&lt;code&gt;#!/bin/bash
  169. &amp;#91;the commands&amp;#93;
  170. &lt;/code&gt;&lt;/pre&gt;&lt;p&gt;And then run&lt;/p&gt;&lt;p&gt;&lt;code&gt;chmod a+x start.sh&lt;/code&gt;&lt;/p&gt;&lt;h3 id=&quot;destroy&quot;&gt;Destroy&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Stop docker process&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;code&gt;docker rm -f mysite.com-www&lt;/code&gt;&lt;/p&gt;
  171. </description>
  172. <pubDate>
  173. Sun, 04 Feb 2018 00:00:00 +0000
  174. </pubDate>
  175. <activity:object-type>video</activity:object-type>
  176. <media:group>
  177. <media:title>VIDEO: Sunset at Ocean Beach (SF)</media:title>
  178. <media:content url="https://ispooge.com/embed.html?#Random/Sunset_at_Ocean_Beach-wBA6drSk1z0" type="text/html" width="1280" height="720"/>
  179. <media:thumbnail url="https://ispooge.com/media/videos/Random/Sunset_at_Ocean_Beach-wBA6drSk1z0.jpg" width="1280" height="720"/>
  180. <media:description>DESCRIPTION: VIDEO: Sunset at Ocean Beach (SF)</media:description>
  181. <media:community>
  182. <media:starRating count="129" average="4.78" min="1" max="5"/>
  183. <media:statistics views="5113"/>
  184. </media:community>
  185. </media:group>
  186. </item>
  187. <item>
  188. <guid>
  189. https://tinydatacenter.com/2018-02-04-desktop.html
  190. </guid>
  191. <link>
  192. https://tinydatacenter.com/2018-02-04-desktop.html
  193. </link>
  194. <title>
  195. Desktop
  196. </title>
  197. <description>
  198. &lt;p&gt;Installing a desktop is a side route and not required for any kind of services, but it's comfortable for people to be able to use a mouse and have a familiar graphical interface to use. It's similar to Mac and Windows, but something different called Linux that is created as free software similar to the methodology used to create this set of tutorials.&lt;/p&gt;&lt;h3 id=&quot;needs&quot;&gt;Needs&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;1 raspi&lt;/li&gt;&lt;li&gt;keyboard&lt;/li&gt;&lt;li&gt;mouse&lt;/li&gt;&lt;/ul&gt;&lt;h3 id=&quot;generate&quot;&gt;Generate&lt;/h3&gt;&lt;p&gt;The desktop system is a software package like any other. It can be installed and uninstalled, is optional to start and stop, and can be configured to start automatically.&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;code&gt;sudo apt-get install &amp;#95;&amp;#95;&amp;#95;&amp;#95;&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;There are a number of pieces to install to this, beyond the scope of what I hope to accomplish. Others have created a script that we can leverage. It's good practice to study the source code. Here's the full command:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;``&lt;/li&gt;&lt;li&gt;&lt;code&gt;startx&lt;/code&gt; will run the desktop system&lt;/li&gt;&lt;/ul&gt;&lt;h3 id=&quot;operate&quot;&gt;Operate&lt;/h3&gt;&lt;h3 id=&quot;destroy&quot;&gt;Destroy&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Go to account and then logout, which will return you to the command line (like old school MS dos)&lt;/li&gt;&lt;li&gt;&lt;code&gt;sudo apt-get remove &amp;#95;&amp;#95;&amp;#95;&amp;#95;&amp;#95;&lt;/code&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h3 id=&quot;resources&quot;&gt;Resources&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;https://github.com/hypriot/x11-on-HypriotOS&lt;/li&gt;&lt;/ul&gt;
  199. </description>
  200. <pubDate>
  201. Sun, 04 Feb 2018 00:00:00 +0000
  202. </pubDate>
  203. </item>
  204. <item>
  205. <guid>
  206. https://tinydatacenter.com/2018-01-30-livestream.html
  207. </guid>
  208. <link>
  209. https://tinydatacenter.com/2018-01-30-livestream.html
  210. </link>
  211. <title>
  212. Live Streaming
  213. </title>
  214. <description>
  215. &lt;h2 id=&quot;live&amp;#95;streaming&quot;&gt;Live streaming&lt;/h2&gt;&lt;p&gt;Needs&lt;/p&gt;&lt;ul&gt;&lt;li&gt;1 raspi&lt;/li&gt;&lt;li&gt;Internet connection&lt;/li&gt;&lt;li&gt;Laptop with OBS&lt;/li&gt;&lt;/ul&gt;
  216. </description>
  217. <pubDate>
  218. Tue, 30 Jan 2018 00:00:00 +0000
  219. </pubDate>
  220. </item>
  221. <item>
  222. <guid>
  223. https://tinydatacenter.com/2018-01-24-webserver-online-and-global.html
  224. </guid>
  225. <link>
  226. https://tinydatacenter.com/2018-01-24-webserver-online-and-global.html
  227. </link>
  228. <title>
  229. Go global with CDN
  230. </title>
  231. <description>
  232. &lt;h2 id=&quot;global&amp;#95;scale&amp;#95;webserver&quot;&gt;Global Scale Webserver&lt;/h2&gt;&lt;p&gt;Configuring CDN for a scalable web server. About an hour of me navigating around the CF console, talking about settings.&lt;/p&gt;&lt;p&gt;Needs&lt;/p&gt;&lt;ul&gt;&lt;li&gt;1 raspi&lt;/li&gt;&lt;li&gt;Internet connection&lt;/li&gt;&lt;/ul&gt;
  233. </description>
  234. <pubDate>
  235. Wed, 24 Jan 2018 00:00:00 +0000
  236. </pubDate>
  237. </item>
  238. </channel>
  239. </rss>