I took part in balena's IoT Happy Hour #63 on 30.07.2021 to talk with balenas Marc and David - as well as DynamicDevices Alex about Bees, gpsTime and space communications. You can watch the talk here on balenas Youtube channel.
Tag: Docker
gpsTime
I think there is nothing more pleasing than having extremely precise measurements at your fingertips. Like time. While in the past it was quite problematic to measure time accurately (not talking about sundials, but... why not? ;)) - mankind has created one precise time source as the byproduct (read: "waste") for usage in accurate navigation: GNSS and their different kinds like GPS, Glonass, Galileo, BaiDou and others.
Taping into this time source and providing it to your local computer network via NTP has been done by countless people and is an extreme rewarding task. Is it necessary? Maybe not. Is it really cool? Yes. And now it is even easier as you don't need to configure it yourself, but can use the balenaHub and the preconfigured gpsTime project.
Basically you just need an RPi B+ (2/3/4), Micro SD Card, Powersupply and 3v3 TTL Level GPS Module with PPS Output. The rest is just done by going on the balenaHub entry shown above, creating a free account and flashing balenaOS onto your SD card, booting the RPi on the internet for the first time and let it get the needed containers. Afterwards you can use the RPi offline and still enjoy your precise time source.
More details can be found in the Github Repo and you can work and improve that project to your hearts content. I am probably going to do an PiAndMore talk about it - and use the project myself as a block for precise timing in some support equipment.
[Talk] IoT Happy Hour #56: balena in Space
[Win10] Random ports blocked while using Docker / WSL / HyperV
I have been using Windows Subsystem for Linux (WSL) and Docker on my Laptop since a long time. And during last Docker Con, WSL 2 was released to which I switched instantly - which I did not regret.
(Note: Upgrading to WSL 2 and the native Docker for WSL 2 version will cost you your containers and Docker images, there is even a Thanos meme coming around - so I have to give this fair warning ;))
However: Said Laptop started acting strange as suddenly local MariaDB instances or Apache2 did cease to work and even some nodeJS projects on port 9000. All these ports were not taken directly by any application, but somehow it did not work anymore. It turns out that a faulty HyperV update led to the hypervisor reserving too many ports across the board.
Luckily there is a solution to correct this issue as shown here by Christopher Pietrzykowski.
To make it easy and fast: Open up a powershell or cmd prompt as admin user and enter
netsh int ipv4 show dynamicport tcp netsh int ipv6 show dynamicport tcp
If it comes up with startport 1025 and a huge number of reserved ports, you are experiencing the same problem. Please enter these commands to realign the startport to 49152 for both IPv4 and IPv6
netsh int ipv4 set dynamic tcp start=49152 num=16384 netsh int ipv6 set dynamic tcp start=49152 num=16384
after a reboot, everything should be fixed again 🙂
Upgrade SonarQube 6.7 to 7.9
That was surprisingly easy: Just swaped the "sonarqube:6.7-community" for the "sonarqube:7.9-community" image entry in my docker-compose.yml and restarted the Docker container. Upon boot, the container restarted due to an error:
ERROR: [2] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
This could be resolved by executing sudo sysctl -w vm.max_map_count=262144
on my Ubuntu 18.04 LTS / Docker Host. After another restart of the container, it worked and I could start the update using a webbrowser under http://IP:9000/setup
(also add the option vm.max_map_count=262144 to the /etc/sysctl.conf)
SonarQube 6.7 Community with Postgres 9.6 in Docker on Ubuntu
This is a very quick install for SonarQube on Ubuntu 18.04 LTS. I presume you got the latest Docker CE 18.09 and docker-compose 1.24 installed.
# create folders for sonarqube files and postgres sudo mkdir -p /var/sonarqube/{conf,data,logs,extensions} sudo chown -R 999:999 /var/sonarqube sudo mkdir -p /var/sonarqube/postgres # make folder for all Docker files in home mkdir ~/sonarqube cd sonarqube # create docker-compose.yml with following content version: '3.1' services: db: image: postgres:9.6-alpine restart: unless-stopped volumes: - /var/sonarqube/postgres:/var/lib/postgresql/data environment: - POSTGRES_USER=sonar - POSTGRES_PASSWORD=sonar sonarqube: image: sonarqube:6.7-community ports: - 9000:9000 - 9092:9092 restart: unless-stopped volumes: - /var/sonarqube/conf:/opt/sonarqube/conf - /var/sonarqube/data:/opt/sonarqube/data - /var/sonarqube/logs:/opt/sonarqube/logs - /var/sonarqube/extensions:/opt/sonarqube/extensions environment: - SONARQUBE_HOME=/opt/sonarqube - SONARQUBE_JDBC_USERNAME=sonar - SONARQUBE_JDBC_PASSWORD=sonar - SONARQUBE_JDBC_URL=jdbc:postgresql://db/sonar # launch docker-compose up -d
You can then access your SonarQube instance on http://<ServerIP>:9000 with the credential admin/admin.
How to delete Hyper-V Virtual Networkcards in Windows 10
As a "Edge" Version user of Docker for Windows, I tend to reinstall Docker from time to time, just to get a clean base. However, Hyper-V digs quite deep into the system and creates its own virtual network interfaces, which you just can't delete from the Hyper-V Manager.
Best option is to use (READ ALL BEFORE COPY AND PASTE, PLEASE!):
netcfg -d
in a Administrator CMD window.
This does only delete virtual network devices - HOWEVER, it does delete devices like i.e. your OpenVPN interface AS WELL - AND does DELETE ALL SETTINGS of other network interfaces, i.e. your IP configuration or all your saved WIFI credentials.
So use with care!
[Talk] Docker Workshop Pythoncamp 2018
My Docker 101 Workshop @ Pythoncamp 2018 (07.04.2018, GFU Cyrus AG Köln, http://pythoncamp.de).
Docker_Pythoncamp2018.pdf (1,13 MB, PDF).
Sourcecode / Example can be found on https://github.com/nmaas87/docker-demo
[Talk] resin(io|os) Presentation
Here is my presentation about resin.io, resinOS and balena @ Docker & Kubernetes Meetup Feb 2018 (Heidelberg, 20.02.2018)
resin_DKM2018.pdf (2,57 MB, PDF)
Videorecording of the talk can be found here
Play with Docker - New Version Online
In case you haven't noticed, we got a wonderful Halloween Gift from Marcos Liljedhal and Jonathan Leibiusky - the all new Play with Docker is online! 🙂
If you want to revisit the changes, just watch their video from Docker Con Europe 2017!
PS: Please disable your Adblocker like uBlock Origin, that stuff can cause serious problems on Play with Docker - had to find that out myself just now ;).