From Fedora Project Wiki
(added setup for testing rootless podman)
m (made it clearer this is an optional test)
Line 5: Line 5:
This testcase can be run on either an image or installation, on hardware or in virtualization.
This testcase can be run on either an image or installation, on hardware or in virtualization.


to test unprivilaged (rootless) podman, install slirp4netns for network namespaces with  
to optionally test unprivilaged (rootless) podman, install slirp4netns for network namespaces with  
   rpm-ostree install --reboot slirp4netns
   rpm-ostree install --reboot slirp4netns



Revision as of 23:09, 13 March 2019

Description

A simple validation test case for Podman on Fedora IoT Edition.

Setup

This testcase can be run on either an image or installation, on hardware or in virtualization.

to optionally test unprivilaged (rootless) podman, install slirp4netns for network namespaces with

  rpm-ostree install --reboot slirp4netns

How to test

Boot image or Installation and log in locally or SSH into booted image.

Check if podman is installed

 rpm -q podman

Check to see if you can pull an image from the registry

sudo podman pull fedora

Run hello-world to test.

sudo podman run -it fedora echo Hello-World

Create a container from Dockerfile

For this test you can use a Dockerfile of your own or use this basic example below:

cat << EOF >> Dockerfile
FROM fedora:latest
RUN /usr/bin/dnf install -y httpd
EXPOSE 80
CMD ["-D", "FOREGROUND"]
ENTRYPOINT ["/usr/sbin/httpd"]
EOF

Build an image

sudo podman build -t f29-httpd $(pwd)

Verify the image

sudo podman images

Run the container

sudo podman run -d -p 80:80 localhost/f29-httpd

Verify the container is running

sudo podman container ls

Test apache is working, this should display the Test page html.

curl http://localhost/

Open a web browser on another computer and enter the IP address to test the page is visible.

Results

  1. Latest image pulled successfully from the Registry
  2. podman is installed
  3. Hello World is displayed
  4. Image booted to a bash shell
  5. Custom container created, httpd test page visible on a browser or using curl.