Running Docker Containers in Torizon OS
1. Overview
This page describes basic example to run the docker containers on Torizon OS using the command-line for the STM32MP boards.
1.1. Reference Documentation
The Docker container engine is a common feature of Torizon OS available on various HW platforms including STM32MP targets. For detailed information on using Docker containers in Torizon OS, refer to Working With Containers Documentation.
1.2. Pre-requisites
To run Docker containers on a STM32MP board, the following pre-requirements must be met:
You have installed Torizon OS to the STM32MP board, this must be one of the STM32MP2 Evaluation board or Discovery kit or the STM32MP1 Discovery kit. Refer to Installing Torizon OS to STM32MP Targets.
2. Running the Hello-World container
Perform the following steps:
From the board terminal, run the
docker run
command:$ docker run --rm hello-world
Check the command output, it should be like as follows, which means the
hello-world
container is successful and the system is ready to run other containers:$ docker run --rm hello-world Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 478afc919002: Pull complete Digest: sha256:1b7a37f2a0e26e55ba2916e0c53bfbe60d9bd43e390e31aacd25cb3581ed74e6 Status: Downloaded newer image for hello-world:latest [631999.832807] docker0: port 1(veth129b520) entered blocking state [631999.833308] docker0: port 1(veth129b520) entered disabled state [631999.841970] device veth129b520 entered promiscuous mode [632000.942976] eth0: renamed from veth8099589 [632000.957668] IPv6: ADDRCONF(NETDEV_CHANGE): veth129b520: link becomes ready [632000.959147] docker0: port 1(veth129b520) entered blocking state [632000.965132] docker0: port 1(veth129b520) entered forwarding state [632000.978075] IPv6: ADDRCONF(NETDEV_CHANGE): docker0: link becomes ready Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (arm64v8) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/ [632001.263086] docker0: port 1(veth129b520) entered disabled state [632001.263827] veth8099589: renamed from eth0 [632001.339006] docker0: port 1(veth129b520) entered disabled state [632001.350756] device veth129b520 left promiscuous mode [632001.350803] docker0: port 1(veth129b520) entered disabled state