You've already forked ansible-docker
							
							
		
			
				
	
	
		
			31 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
| FROM docker.io/library/rockylinux:8
 | |
| 
 | |
| RUN dnf update --assumeyes && \
 | |
|     dnf install --assumeyes bash-completion sudo && \
 | |
|     dnf install --assumeyes epel-release && \
 | |
|     dnf install --assumeyes ansible && \
 | |
|     dnf remove --assumeyes epel-release && \
 | |
|     dnf install --assumeyes 'dnf-command(config-manager)' && \
 | |
|     dnf config-manager --set-enabled ha && \
 | |
|     dnf install --assumeyes python3-boto3 python3-botocore && \
 | |
|     dnf clean all
 | |
| 
 | |
| # We must change python to 3.12 (default 3.6), to be compliant with ansible-core. Furthermore, we must upgrade pip to
 | |
| # latest version. Otherwise is still used pip for python 3.6. At least, we install boto3, which is required for the aws
 | |
| # dynamic inventory manually, because the official python-boto3 package is for python 3.6.
 | |
| RUN alternatives --set python3 /usr/bin/python3.12 && \
 | |
|     curl --fail --silent --location https://bootstrap.pypa.io/get-pip.py --output get-pip.py && \
 | |
|     python3 get-pip.py && \
 | |
|     pip install boto3
 | |
| 
 | |
| # Create default ansible inventory file
 | |
| RUN mkdir --parents /etc/ansible
 | |
| RUN echo -e "[local]\nlocalhost ansible_connection=local" > /etc/ansible/hosts
 | |
| 
 | |
| # Remove unnecessary getty and udev targets that result in high CPU usage when
 | |
| # using multiple containers with molecule
 | |
| # (https://github.com/ansible/molecule/issues/1104)
 | |
| RUN rm --recursive --force /lib/systemd/system/systemd*udev* && \
 | |
|     rm --recursive --force /lib/systemd/system/getty.target
 | |
| 
 | |
| VOLUME [ "/sys/fs/cgroup", "/tmp", "/run"] |