Giter Club home page Giter Club logo

docker-fedora37-ansible's Introduction

Fedora 37 Ansible Test Image

CI Docker pulls

Fedora 37 Docker container for Ansible playbook and role testing.

Tags

  • latest: Latest stable version of Ansible.

The latest tag is a lightweight image for basic validation of Ansible playbooks.

How to Build

This image is built on Docker Hub automatically any time the upstream OS container is rebuilt, and any time a commit is made or merged to the master branch. But if you need to build the image on your own locally, do the following:

  1. Install Docker.
  2. cd into this directory.
  3. Run docker build -t fedora37-ansible .

Note: Switch between master and testing depending on whether you want the extra testing tools present in the resulting image.

How to Use

  1. Install Docker.
  2. Pull this image from Docker Hub: docker pull geerlingguy/docker-fedora37-ansible:latest (or use the image you built earlier, e.g. fedora37-ansible:latest).
  3. Run a container from the image: docker run --detach --privileged --volume=/sys/fs/cgroup:/sys/fs/cgroup:rw --cgroupns=host geerlingguy/docker-fedora37-ansible:latest (to test my Ansible roles, I add in a volume mounted from the current working directory with --volume=`pwd`:/etc/ansible/roles/role_under_test:ro).
  4. Use Ansible inside the container: a. docker exec --tty [container_id] env TERM=xterm ansible --version b. docker exec --tty [container_id] env TERM=xterm ansible-playbook /path/to/ansible/playbook.yml --syntax-check

Notes

I use Docker to test my Ansible roles and playbooks on multiple OSes using CI tools like Jenkins and Travis. This container allows me to test roles and playbooks using Ansible running locally inside the container.

Important Note: I use this image for testing in an isolated environment—not for production—and the settings and configuration used may not be suitable for a secure and performant production environment. Use on production servers/in the wild at your own risk!

Author

Created in 2022 by Jeff Geerling, author of Ansible for DevOps.

docker-fedora37-ansible's People

Contributors

geerlingguy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

docker-fedora37-ansible's Issues

Can't run in background

I am able to run oneshot commands with the container, but if I try using an example from the repo:

docker run --detach --privileged --volume=/sys/fs/cgroup:/sys/fs/cgroup:ro geerlingguy/docker-fedora37-ansible:latest

I see the container as exited (255) in the ps output:

$ docker ps -a
CONTAINER ID   IMAGE                                        COMMAND            CREATED         STATUS                       PORTS     NAMES
8d336e488a23   geerlingguy/docker-fedora37-ansible:latest   "/usr/sbin/init"   5 seconds ago   Exited (255) 4 seconds ago             admiring_hertz

Therefore, if I try running the example command on the running container, it fails:

$ docker exec --tty 8d33 env TERM=xterm ansible --version
Error response from daemon: Container 8d336e488a2315fddfb3e23ad5131bd08e875b45971e1ec926a64a3491cc0242 is not running

Looking at the Fedora 37 ChangeSet, I don't see anything pointing to a breaking change in the way the init system/systemd is set up...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.