Container images

Container images

RF Swift has an images options that allows to deal with remote and local images.

Let us discover these different options.

Remote images

You can list remote images associated to the architecture you are using with the images remote command set:

rfswift images remote
...
 💿 Official Images                                                                                                 
┌──────────────────────────────┬──────────────────────┬────────────────────────────────────────────────┬──────────────┐
│ Tag                          │ Pushed Date          │ Image                                          │ Architecture │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ sdr_full_amd64               │ 2024-09-03T08:09:08Z │ penthertz/rfswift:sdr_full_amd64               │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ bluetooth                    │ 2024-09-03T04:54:41Z │ penthertz/rfswift:bluetooth                    │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ telecom                      │ 2024-09-03T04:24:10Z │ penthertz/rfswift:telecom                      │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ sdrsa_devices_antsdr         │ 2024-09-03T01:54:23Z │ penthertz/rfswift:sdrsa_devices_antsdr         │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ extrasofts_amd64             │ 2024-09-03T01:45:27Z │ penthertz/rfswift:extrasofts_amd64             │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ extraoot1_amd64              │ 2024-09-03T01:03:38Z │ penthertz/rfswift:extraoot1_amd64              │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ extraoot2_amd64              │ 2024-09-03T01:02:21Z │ penthertz/rfswift:extraoot2_amd64              │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ mldlsofts_amd64              │ 2024-09-03T00:54:35Z │ penthertz/rfswift:mldlsofts_amd64              │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ sdr_light                    │ 2024-09-03T00:51:03Z │ penthertz/rfswift:sdr_light                    │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ reversing                    │ 2024-09-03T00:37:44Z │ penthertz/rfswift:reversing                    │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ telecom_amd64                │ 2024-09-03T00:32:08Z │ penthertz/rfswift:telecom_amd64                │ amd64        │
├──────────────────────────────┼──────────────────────┼────────────────────────────────────────────────┼──────────────┤
│ wifi_amd64                   │ 2024-09-03T00:15:16Z │ penthertz/rfswift:wifi_amd64                   │ amd64        │
...

You will see that some tag are specific to the architecture sdr_light_amd64, but others like sdr_light do not include the architecture. First you should know that those two tags are the same, but sdr_light can be used also against aarch64/arm64, and riscv64 as well.

To better explain the different pre-compiled image, look at this table showing the main images you will be interested in:

Tag Supported OS x86_64/amd64 arm64/v8 riscv64 Description
corebuild - Linux - Windows Base image including prerequisites for compiling tools and libraries for applications needing GUI and some other necessary tools
sdrsa_devices - Linux - Windows Contains all drivers of devices included in sdrsa_devices.docker
sdrsa_devices_antsdr - Linux - Windows Contains all drivers of devices included in sdrsa_devices.docker but replacing official UHD drivers by ANTSDR ones
sdrsa_devices_rtlsdrv4 - Linux - Windows Contains all drivers of devices included in sdrsa_devices.docker but replacing default RTL-SDR drivers to support v4 version for the RTL-SDR blog
sdr_light - Linux - Windows Light image built for SDR uses with limited number of tools used in sdr_light.docker file
sdr_light_intelgpu - Linux - Windows same as sdr_light but with Intel GPU driver and gr-fosphor
sdr_light_nvidiagpu - Linux - Windows same as sdr_light but with NVidia GPU driver and gr-fosphor
sdr_full - Linux - Windows Full image including all SDR tools used in sdr_full.docker file
wifi_basic - Linux - Windows Wi-Fi image for security tests using tools included in wifi_basic.docker
wifi_full - Linux - Windows Wi-Fi image for security tests using tools included in wifi_full.docker
rfid - Linux - Windows RFID image for security tests using tools included in rfid.docker
reversing - Linux - Windows ❌ (not yet) Reversing image for security tests using tools included in reversing.docker
automotive - Linux - Windows ❌ (not yet) Automotive image for security tests using tools included in automotive.docker
bluetooth - Linux - Windows Bluetooth classic and LE image for security tests using tools in bluetooth.docker
telecom_utils - Linux - Windows Telecom image for security tests using tools included in telecom_utils.docker
telecom_2Gto3G - Linux - Windows Telecom image for security tests using tools included in telecom_2Gto3G.docker
telecom_4G_5GNSA - Linux - Windows Telecom image for security tests using tools included in telecom_4G_5GNSA.docker
telecom_5G - Linux - Windows Telecom image for security tests using tools included in telecom_4G_5GNSA.docker

Here is you will find images hierarchy:

graph TD;
    A[corebuild]-->B[sdrsa_devices];
    A-->C[rfid];
    A-->D[automotive];
    A-->E[reversing];
    A-->F[sdrsa_devices_antsdr];
    A-->G[sdrsa_devices_rtlsdrv4];
    B[sdrsa_devices]-->H[sdr_light];
    B[sdrsa_devices]-->I[bluetooth];
    B[sdrsa_devices]-->J[wifi_basic];
    B[sdrsa_devices]-->L[telecom_utils];
    L-->M[telecom_2Gto3G];
    L-->N[telecom_4G_5GNSA];
    L-->O[telecom_5G];
    J-->P[wifi_full];
    H-->K[sdr_full]

So if you want to build one of your own, do not hesitate to take one these images as a reference.

List local images

To list pulled, but also built images, you can issue the images local command, that will display these local images and details:

  📦 RF Swift Images                                                                                          
┌──────────────────────┬─────────────────┬──────────────┬───────────────────────────┬─────────────┬────────────┐
│ Repository           │ Tag             │ Image ID     │ Created                   │ Size        │ Status     │
├──────────────────────┼─────────────────┼──────────────┼───────────────────────────┼─────────────┼────────────┤
│ myrfswift            │ latest          │ sha256:0bdb2 │ 2024-09-01T00:56:27+02:00 │ 16635.22 MB │ Custom     │
├──────────────────────┼─────────────────┼──────────────┼───────────────────────────┼─────────────┼────────────┤
│ penthertz/rfswiftdev │ sdr_full_amd64  │ sha256:0bdb2 │ 2024-09-01T00:56:27+02:00 │ 16635.22 MB │ Up to date │
├──────────────────────┼─────────────────┼──────────────┼───────────────────────────┼─────────────┼────────────┤
│ penthertz/rfswiftdev │ sdr_light_amd64 │ sha256:476c0 │ 2024-09-01T00:34:55+02:00 │ 9617.12 MB  │ Up to date │
├──────────────────────┼─────────────────┼──────────────┼───────────────────────────┼─────────────┼────────────┤
│ penthertz/rfswift    │ sdr_full        │ sha256:50ce1 │ 2024-08-02T14:45:46+02:00 │ 10383.56 MB │ Custom     │
└──────────────────────┴─────────────────┴──────────────┴───────────────────────────┴─────────────┴────────────┘
ℹ️
The status can serve as a good indicator to show if the images are up-to-date when using official tags.

If an update is necessary you can issue a images pull command as follows:

rfswift images pull -i penthertz/rfswift:<tag_name>

Next

In next pages, you will have a better idea of tools installed for each images, as well as other details.

Dive right into the following section to get started:

Last updated on