Files
hugo_docker/content/AWX_und_Rundeck_install.md
T
2026-09-08 11:02:29 +02:00

3.0 KiB

title, date
title date
Rundeck und AWX Installation mit Docker 2026-09-08

Rundeck und AWX Installation mit Docker

Diese Anleitung zeigt, wie man Rundeck und AWX in Docker-Containern installiert, wobei alle wichtigen Daten persistent gespeichert werden.

Voraussetzungen

  • Docker und Docker-Compose installiert
  • Ausreichend Speicherplatz (mindestens 2GB empfohlen)
  • Ports 4440 und 8052 frei

Rundeck Installation

  1. Verzeichnis für persistente Daten erstellen:

    mkdir -p ~/rundeck_data
    
  2. Rundeck Container starten:

    docker run -d \
      -p 4440:4440 \
      -v ~/rundeck_data:/home/rundeck/server/data \
      --name rundeck \
      rundeck/rundeck:latest
    
  3. Zugriff:

    • URL: http://:4440
    • Login: admin/admin

AWX Installation

  1. Verzeichnisse für persistente Daten erstellen:

    mkdir -p ~/awx_data/postgres ~/awx_data/projects
    
  2. docker-compose.yml erstellen:

    cat <<EOL > ~/awx_data/docker-compose.yml
    version: '3'
    services:
      postgres:
        image: postgres:13
        volumes:
          - ~/awx_data/postgres:/var/lib/postgresql/data
        environment:
          POSTGRES_DB: awx
          POSTGRES_USER: awx
          POSTGRES_PASSWORD: awxpass
    
      awx:
        image: ansible/awx:latest
        depends_on:
          - postgres
        ports:
          - "8052:8052"
        volumes:
          - ~/awx_data/projects:/var/lib/awx/projects
        environment:
          DATABASE_USER: awx
          DATABASE_PASSWORD: awxpass
          DATABASE_NAME: awx
          DATABASE_HOST: postgres
    EOL
    
  3. AWX starten:

    cd ~/awx_data
    docker-compose up -d
    
  4. Zugriff:

    • URL: http://:8052
    • Login: admin/password

Persistenz und Autostart

Um sicherzustellen, dass die Container nach einem Neustart automatisch starten, können Systemd-Services eingerichtet werden:

  1. Für Rundeck:

    sudo bash -c 'cat <<EOL > /etc/systemd/system/rundeck-docker.service
    [Unit]
    Description=Rundeck Docker Container
    After=docker.service
    
    [Service]
    Restart=always
    ExecStart=/usr/bin/docker start -a rundeck
    ExecStop=/usr/bin/docker stop -t 2 rundeck
    
    [Install]
    WantedBy=multi-user.target
    EOL'
    
  2. Für AWX:

    sudo bash -c 'cat <<EOL > /etc/systemd/system/awx-docker.service
    [Unit]
    Description=AWX Docker Container
    After=docker.service
    
    [Service]
    WorkingDirectory=/home/$(whoami)/awx_data
    Restart=always
    ExecStart=/usr/local/bin/docker-compose up
    ExecStop=/usr/local/bin/docker-compose down
    
    [Install]
    WantedBy=multi-user.target
    EOL'
    
  3. Services aktivieren:

    sudo systemctl daemon-reload
    sudo systemctl enable rundeck-docker
    sudo systemctl enable awx-docker
    

Wichtige Hinweise

  • Beide Lösungen können parallel betrieben werden
  • Daten werden in ~/rundeck_data und ~/awx_data gespeichert
  • Für Produktivumgebungen sollten zusätzliche Sicherheitsmaßnahmen getroffen werden