Direkt zum Hauptinhalt

Docker installtion

Beschreibung:

RustDesk installation via Docker


Vorrausetzung

docker-compose

apt install docker-compose


Installtion

Zuert legen wir uns ein Verzeichnis an z.b

mkdir /root/rustdesk/data
cd /root/rustdesk

Darin legen wir uns eine .env Datei an.

nano /root/rustdesk/.env

Inhalt

DATA_PATH=/root/rustdesk/data
RUSTDESK_USER=admin
RUSTDESK_PASSWORD=12345678
RUSTDESK_PORT=21115

Nun die Composer File

nano /root/rustdata/docker-compose.yml

Inhalt

version: '3.8'
services:
  rustdesk:
    image: rustdesk/rustdesk-server:latest
    environment:
      - DATA_PATH=${DATA_PATH}
      - USER=${RUSTDESK_USER}
      - PASSWORD=${RUSTDESK_PASSWORD}
    volumes:
      - ${DATA_PATH}:/data
    ports:
      - "${RUSTDESK_PORT}:21115"
    restart: unless-stopped

mit docker-compose up starten wir das ganze

docker-compose up -d

Ansible Script das die oberen Schritte ausführt

Die host.ini

Inhalt:

192.168.178.122 ansible_user=root rustdesk_data_path=/pfad/zu/deinen/daten rustdesk_user=admin rustdesk_password=12345678 rustdesk_port=21115

Nun das Playbook

rustdesk.yml

Inhalt:

---
- name: Deploy RustDesk via Docker Compose
  hosts: all
  become: yes
  vars:
    rustdesk_data_path: "{{ hostvars[inventory_hostname].rustdesk_data_path }}"
    rustdesk_user: "{{ hostvars[inventory_hostname].rustdesk_user }}"
    rustdesk_password: "{{ hostvars[inventory_hostname].rustdesk_password }}"
    rustdesk_port: "{{ hostvars[inventory_hostname].rustdesk_port }}"

  tasks:
    - name: Create RustDesk data directory
      file:
        path: "{{ rustdesk_data_path }}"
        state: directory

    - name: Create .env file for RustDesk
      copy:
        dest: "{{ rustdesk_data_path }}/.env"
        content: |
          DATA_PATH={{ rustdesk_data_path }}
          RUSTDESK_USER={{ rustdesk_user }}
          RUSTDESK_PASSWORD={{ rustdesk_password }}
          RUSTDESK_PORT={{ rustdesk_port }}

    - name: Create Docker Compose file for RustDesk
      copy:
        dest: "{{ rustdesk_data_path }}/docker-compose.yml"
        content: |
          version: '3.8'
          services:
            rustdesk:
              image: rustdesk/rustdesk-server:latest
              environment:
                - DATA_PATH=${DATA_PATH}
                - USER=${RUSTDESK_USER}
                - PASSWORD=${RUSTDESK_PASSWORD}
              volumes:
                - ${DATA_PATH}:/data
              ports:
                - "${RUSTDESK_PORT}:21115"
              restart: unless-stopped

    - name: Install Docker and Docker Compose
      apt:
        name:
          - docker
          - docker-compose
        state: latest
      when: ansible_os_family == "Debian"

    - name: Start and enable RustDesk Docker container
      docker_compose:
        project_src: "{{ rustdesk_data_path }}"
        state: present
        restarted: yes

nachdem die host.ini angepasst wurde kann mit

ansible-playbook -i host.ini rustdesk.yml

rustdesk ausgerollt werden