This commit is contained in:
sotos
2025-12-15 08:24:28 +01:00
parent 4e92a6d6f3
commit 05d8ed71f1
26 changed files with 75 additions and 526 deletions

View File

@@ -0,0 +1,21 @@
---
- hosts: all
become: true
vars:
app_dir: /opt/docker/snake
tasks:
- name: Create app directory
file:
path: "{{ app_dir }}"
state: directory
- name: Copy snake app
copy:
src: ../../docker/snake/
dest: "{{ app_dir }}"
- name: Start snake app
command: docker compose up -d
args:
chdir: "{{ app_dir }}"

View File

@@ -0,0 +1,22 @@
---
- hosts: all
become: true
tasks:
- name: Install required packages
apt:
name:
- ca-certificates
- curl
update_cache: yes
- name: Install Docker
shell: curl -fsSL https://get.docker.com | sh
args:
creates: /usr/bin/docker
- name: Enable Docker
systemd:
name: docker
enabled: true
state: started

View File

@@ -0,0 +1,21 @@
---
- hosts: all
become: true
vars:
monitor_dir: /opt/docker/monitoring
tasks:
- name: Create monitoring directory
file:
path: "{{ monitor_dir }}"
state: directory
- name: Copy monitoring stack
copy:
src: ../../docker/monitoring/
dest: "{{ monitor_dir }}"
- name: Start monitoring
command: docker compose up -d
args:
chdir: "{{ monitor_dir }}"

View File

@@ -1,94 +0,0 @@
- name: Deploy Dockerized WordPress and MySQL using images from GitLab and Harbor
hosts: all
become: true
gather_facts: true
remote_user: root
vars:
wordpress_image: "gitlab.noris.net:5050/smartika/aop1-projekte:latest"
db_image: "harbor.noris.net/docker.io/library/mariadb:11"
project_name: wordpress_stack
mysql_root_password: "changeme" # replace securely in real usage
tasks:
- name: Install Docker and dependencies
apt:
name:
- docker.io
- python3-pip
- python3-requests
- docker-compose
- ca-certificates
- curl
- gnupg
- lsb-release
state: present
update_cache: yes
- name: Ensure Docker is running
systemd:
name: docker
state: started
enabled: true
- name: Login to GitLab container registry
community.docker.docker_login:
registry_url: gitlab.noris.net:5050
username: "{{ gitlab_username }}"
password: "{{ gitlab_password }}"
no_log: true
- name: Login to Harbor container registry
community.docker.docker_login:
registry_url: harbor.noris.net
username: "{{ gitlab_username }}"
password: "{{ gitlab_password }}"
no_log: true
- name: Pull WordPress image
community.docker.docker_image:
name: "{{ wordpress_image }}"
source: pull
- name: Pull MariaDB image
community.docker.docker_image:
name: "{{ db_image }}"
source: pull
- name: Run WordPress + MariaDB stack using docker_compose
community.docker.docker_compose:
project_name: "{{ project_name }}"
recreate: always
remove_orphans: true
pull: yes
definition:
version: "3.8"
services:
db:
image: "{{ db_image }}"
restart: always
environment:
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: "{{ mysql_root_password }}"
MYSQL_ROOT_PASSWORD: "{{ mysql_root_password }}"
volumes:
- db_data:/var/lib/mysql
wordpress:
image: "{{ wordpress_image }}"
ports:
- "1337:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: "{{ mysql_root_password }}"
WORDPRESS_DB_NAME: wordpress
volumes:
- wp_data:/data
depends_on:
- db
volumes:
db_data: {}
wp_data: {}