61 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
---
 | 
						|
- name: Install Podman Compose on all Nomad cluster nodes
 | 
						|
  hosts: nomad_cluster
 | 
						|
  become: yes
 | 
						|
  
 | 
						|
  tasks:
 | 
						|
    - name: Display target node
 | 
						|
      debug:
 | 
						|
        msg: "正在安装 Podman Compose 到节点: {{ inventory_hostname }}"
 | 
						|
    
 | 
						|
    - name: Update package cache
 | 
						|
      apt:
 | 
						|
        update_cache: yes
 | 
						|
      ignore_errors: yes
 | 
						|
      
 | 
						|
    - name: Install Podman and related tools
 | 
						|
      apt:
 | 
						|
        name:
 | 
						|
          - podman
 | 
						|
          - podman-compose
 | 
						|
          - buildah
 | 
						|
          - skopeo
 | 
						|
        state: present
 | 
						|
      ignore_errors: yes
 | 
						|
      
 | 
						|
    - name: Install additional dependencies
 | 
						|
      apt:
 | 
						|
        name:
 | 
						|
          - python3-pip
 | 
						|
          - python3-setuptools
 | 
						|
        state: present
 | 
						|
      ignore_errors: yes
 | 
						|
      
 | 
						|
    - name: Install podman-compose via pip if package manager failed
 | 
						|
      pip:
 | 
						|
        name: podman-compose
 | 
						|
        state: present
 | 
						|
      ignore_errors: yes
 | 
						|
      
 | 
						|
    - name: Verify Podman installation
 | 
						|
      shell: podman --version
 | 
						|
      register: podman_version
 | 
						|
      
 | 
						|
    - name: Verify Podman Compose installation
 | 
						|
      shell: podman-compose --version
 | 
						|
      register: podman_compose_version
 | 
						|
      ignore_errors: yes
 | 
						|
      
 | 
						|
    - name: Display installation results
 | 
						|
      debug:
 | 
						|
        msg: |
 | 
						|
          ✅ 节点 {{ inventory_hostname }} 安装结果:
 | 
						|
          📦 Podman: {{ podman_version.stdout }}
 | 
						|
          🐳 Podman Compose: {{ podman_compose_version.stdout if podman_compose_version.rc == 0 else '安装失败或不可用' }}
 | 
						|
                    
 | 
						|
    - name: Ensure Podman socket is enabled
 | 
						|
      systemd:
 | 
						|
        name: podman.socket
 | 
						|
        enabled: yes
 | 
						|
        state: started
 | 
						|
      ignore_errors: yes |