commit 1e1d538c5d4a4cbd661e1d38f498f88b709a5972 Author: jakub_figat Date: Mon Jul 14 07:21:34 2025 +0000 Add meteo_setup.yml diff --git a/meteo_setup.yml b/meteo_setup.yml new file mode 100644 index 0000000..68507cb --- /dev/null +++ b/meteo_setup.yml @@ -0,0 +1,70 @@ +# Aby uruchomic ten playbook przez Dockera: +# docker run --rm -it \ +# -v /home/jakub/services/connect_moria:/ansible/playbooks \ +# -v ~/.ssh/id_rsa:/root/.ssh/id_rsa:ro \ +# willhallonline/ansible:latest \ +# /bin/sh -c "ansible-galaxy install geerlingguy.docker && ansible-playbook -i /ansible/playbooks/hosts.ini /ansible/playbooks/meteo_setup.yml" + +- name: Setup weather-app and DB + hosts: moria + become: true + + vars: + docker_registry_username: "" + docker_registry_password: "" + docker_image: "registry.cbpio.pl/twoj_uzytkownik/weather-app:latest" + + pg_container_name: db + pg_image: postgres:16 + pg_user: weather_user + pg_password: weather_pass + pg_db: weather + pg_volume: weather_data + pg_network: shared-net + + roles: + - geerlingguy.docker + + tasks: + - name: Docker login + community.docker.docker_login: + registry_url: registry.cbpio.pl + username: "{{ docker_registry_username }}" + password: "{{ docker_registry_password }}" + + - name: Create network + community.docker.docker_network: + name: "{{ pg_network }}" + state: present + + - name: Create volume + community.docker.docker_volume: + name: "{{ pg_volume }}" + + - name: Start DB container + community.docker.docker_container: + name: "{{ pg_container_name }}" + image: "{{ pg_image }}" + restart_policy: always + state: started + env: + POSTGRES_USER: "{{ pg_user }}" + POSTGRES_PASSWORD: "{{ pg_password }}" + POSTGRES_DB: "{{ pg_db }}" + volumes: + - "{{ pg_volume }}:/var/lib/postgresql/data" + networks: + - name: "{{ pg_network }}" + + - name: Start app container + community.docker.docker_container: + name: weather-app + image: "{{ docker_image }}" + restart_policy: always + state: started + ports: + - "8000:8000" + env: + DATABASE_URL: "postgresql+asyncpg://{{ pg_user }}:{{ pg_password }}@db:5432/{{ pg_db }}" + networks: + - name: "{{ pg_network }}"