From Fedora Project Wiki
 
(4 intermediate revisions by the same user not shown)
Line 13: Line 13:
Check to see if you can pull an image from the registry
Check to see if you can pull an image from the registry
  podman pull registry.fedoraproject.org/fedora:latest
  podman pull registry.fedoraproject.org/fedora:latest
Note when testing aarch64 you may need to include '--override-arch arm64' due to this [https://bugzilla.redhat.com/show_bug.cgi?id=1793927 bug]


Run hello-world to test.
Run hello-world to test.
  podman run -it fedora:latest echo Hello-World
  podman run -it registry.fedoraproject.org/fedora:latest echo Hello-World


= Create a container from Dockerfile =  
= Create a container from Dockerfile =  
Line 21: Line 23:
<pre>
<pre>
cat << EOF >> Dockerfile
cat << EOF >> Dockerfile
FROM fedora:latest
FROM registry.fedoraproject.org/fedora:latest
RUN /usr/bin/dnf install -y httpd
RUN /usr/bin/dnf install -y httpd
EXPOSE 80
EXPOSE 80
Line 30: Line 32:


Build an image
Build an image
  sudo podman build -t f30-httpd $(pwd)
  sudo podman build -t fedora-httpd $(pwd)


Verify the image
Verify the image
Line 36: Line 38:


Run the container
Run the container
  sudo podman run -d -p 80:80 localhost/f30-httpd
  sudo podman run -d -p 80:80 localhost/fedora-httpd


Verify the container is running
Verify the container is running
Line 43: Line 45:
Test apache is working, this should display the Test page html.  
Test apache is working, this should display the Test page html.  
  curl http://localhost/
  curl http://localhost/
Open the firewall to accept connections on port 80
  firewall-cmd --permanent --zone=trusted --add-interface=cni-podman0
  firewall-cmd --permanent --zone=trusted --add-port=80/tcp


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

Latest revision as of 18:20, 6 May 2020

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.

How to test

Boot image or Installation and log in locally or SSH into booted image. For this test, use a regular user account to ensure rootless podman is working.

Check if podman is installed

 rpm -q podman

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

podman pull registry.fedoraproject.org/fedora:latest

Note when testing aarch64 you may need to include '--override-arch arm64' due to this bug

Run hello-world to test.

podman run -it registry.fedoraproject.org/fedora:latest 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 registry.fedoraproject.org/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 fedora-httpd $(pwd)

Verify the image

sudo podman images

Run the container

sudo podman run -d -p 80:80 localhost/fedora-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 the firewall to accept connections on port 80

 firewall-cmd --permanent --zone=trusted --add-interface=cni-podman0
 firewall-cmd --permanent --zone=trusted --add-port=80/tcp


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. Custom container created, httpd test page visible on a browser or using curl.