Containers
19 Feb 2025
Adding ZWave devices to my Home Assistant smart home
There are some quirks related to running standalone Home Assistant (HA) from a Docker container. I found that the route to enable support and add a device using ZWave is not well documented for this HA configuration, especially for someone new to and unfamiliar with ZWave.
Running ZWave JS server #
My biggest bugaboo was that…
Without a ZWave hub on the network, a standalone ZWave server is needed to mediate the ZWave network and communicate with HA. I was able to run an official zwavejs/zwave-js-ui
container image, and pass my ZWave USB dongle device through to “/dev/zwave”.
19 Sep 2024
Installing the new Go-based Fabric LLM cli
Fabric’s installation instructions from its website make it appear that installing this new version rewritten in the Go language should be easier than it was with the original Python implementation.
Although pipx
made things relatively easy before,
I ran into trouble when my installed version of Go did not meet the requirements of
the newer Fabric package.
|
|
My solution was to try out PKGX which was something that I had been looking for an excuse to try.
21 May 2024
Microsoft created a modular text editor (referred to as vscode or just code
on the command line) that is easy to install and use across platforms including integration with Docker containers and WSL2.
Install #
Use this link and follow the instructions to install vscode for your platform/OS: https://code.visualstudio.com/download
Ubuntu #
For Ubuntu, choose either CLI/x64 or .deb/x64 options.
Basic usage #
- Icons along left-side: Open different editor environments or side-bars including extension browser, file explorer, and git information.
- Command palette: Most actions or options are available from either shortcut-key-combinations or the command palatte which is a fuzzy-matching command search accessible with CTL+SHIFT+p.
Extensions #
vscode provides a mechanism to install official and community extensions to tailor the editor for specific code/development tasks and support for enhanced features when editing a multitude of plain text formats.
30 Jan 2024
Run Large Language Models Locally With *ollama.ai's* Docker Image
ollama is an open-source framework for self-hosting large language models (LLM) similar to ChatGPT or Google’s Bard. The official Docker image makes it painless to host any number of the supported models.
Shell script to get an Ollama model running #
The example “run_ollama_container.sh” script(s) below take the LLM model name as an argument (assigned to $LLMMODEL
), but the pull
and run
docker exec
commands can be called additional times to start other models as well within the same running container.
30 Nov 2023
What is the NVIDIA Container Toolkit?
The NVIDIA Container Toolkit is a set of utilities and libraries provided by NVIDIA to enable containers to use and share NVIDIA GPU resources. The toolkit is container agnostic, supporting several common container runtimes including Docker and Podman.
It appears to present GPU/CUDA features to software running within containers on the host with the NVIDIA GPU. The supported platforms seem to be specifically GNU/Linux distributions (Debian, Ubuntu, Centos, Fedora, Open Suse, and Amazon’s Amazon Linux AMIs) on typical amd64, arm64/aarch64 hardware.
11 Oct 2023
*Magic-Wormhole* file transfer
Warp is a Rust software package that makes sending content between computers super easy using entryption and simple one-time word-based or QR-code authentication keys. Because of the underlying protocol, transfers will occur over local LAN or internet depending on where the machines involved are located. The software allows users to send and recieve files between Linux, OSX, Windows and smart phones.
I was interested in using Warp on the command line for simple low-setup file transfers in and out of my office, but it turns out that the underlying protocol that Warp leverages is also an open-source project and it already includes a CLI (magic-wormhole).
29 Aug 2023
An Update To Apptainer Use On TACC HPC
The University of Texas’ newest supercomputer Frontera currently requires the following modules loaded for Apptainer images/containers based on the mvapich infiniband (ib) base images–particularly for any containerized programs that intend to use MPI.
Researchers moving their Apptainer images between TACC HPC systems, or building container images specifically for individual systems, may need to adapt their sbatch scripts to accommodate differences between default environments and infrastructures on the various available clusters.
3 Apr 2023
Reproducible Scientific Python Using Containers
Use Microsoft’s VSCode editor (code
), Docker Containers, and other open-source tools for scientific Python software collaboration, development, and use on Linux and Windows. Securely connect offices, remote workers, storage resources, compute resources, and the cloud with Tailscale as a replacement for traditional VPN.
System Packages #
VSCode Editor #
Download Visual Studio Code from Microsoft.
For a Debian-based GNU/Linux distribution like Ubuntu or Pop OS, the .deb can be installed with sudo dpkg -i code_$version_amd64.deb
.
27 Mar 2023
The many layers of software dependencies within containers can add extra security considerations. Luckily there are a number of tools like Trivy and Docker scan
to scan Docker images for vulnerabilities.
[Trivy is a] Scanner for vulnerabilities in container images, file systems, and Git repositories, as well as for configuration issues and hard-coded secrets
Trivy can be installed with the following commands on Debian-based Linux distros, including WSL environments.
4 May 2022
SWAN Wave Model Container with MPI
Coinciding with the Containers at TACC training taking place today via webinar, here is a method I have used successfully to build our version of SWAN v41.10 spectral wave model in order to run with MPI on the University of Texas’ Stampede2 cluster.
Build SWAN with Docker #
The following Dockerfile will build the parallel mpi implementation of SWAN, the single-core serial SWAN model, and the SWAN hcat
concatenation utility. The containerized model should be able to be used for 2D non-stationary, 1D or stationary simulations.
13 Jan 2021
Singularity From Local Docker Image
One of the powerful features of Singularity is the ability to create Singularity images from Docker images, pulling directly from public or otherwise accessible Docker repositories. There are also some un- or minimally- documented ways to extend Singularity’s impressive capacity, like converting local Docker images that may not be available in a proper Docker image repo.
To convert a local image without fetching from a remote repository you can use docker-daemon
in the protocol as found here.
23 Sep 2019
Singularity Container System for HPC
At work I had a task to port the WRFv4 atmospheric model that we currently run in the office, from a Docker container, up to the Lonestar5 (LS5) supercomputer at the Texas Advanced Computing Center (TACC). My first impulse was to simply replicate the Dockerfile steps that we use in a simple bash script to natively build the required WRF executables.
Since I always forget the module load
commands, I opened up the LS5 documentation. In doing so, I noticed that a recent update system update provides support for “Singularity” containers. Somehow I missed the rising popularity and support for Singularity, but was intrigued because it attempts to solve several of the problems we deal with running parallel numerical models (MPI, GPU and queue/batch systems) with Docker containers. And so I went down the rabbit hole of researching and installing Singularity with the hopes of replicating our Docker-like container workflows in a way that will run on LS5.
18 Mar 2019
Running WRF Singularity Container on TACC Systems
So prior the the recent TACC training on containers I was trying to get our WRF Docker images to run up on the TACC HPC infrastructure using Singularity.
I checked the version of Singularity on the Lonestar5 cluster and it was behind the most recent versions a bit, but luckily there are Docker images for Singularity so you can play with whatever version might be required. (The version on Lonestar5 may already be updated by now too, recent version on Stampede2 was 3.4.3.)