Ansible/playbook/docker/mediaserver/back/deploy.yml

113 lines
3.1 KiB
YAML
Raw Normal View History

Dev (#9) * docker tests are looking good and nfs is able to connect and containers can talk to each other. * Added pihole support for a new vm * pihole is not working yet via docker. Installed it by hand without ansible for now. * added some docker related tasks and working on collins now to see how to use it. * forgot to push some changes... kube didnt work out as it adds too much overhead for what I need. * added two roles to help working with backup and restore of docker volume data. * did some cleanup on old roles. * pushing for axw testing * moving to requirements.yml. adding cron jobs for maint. * roles are being moved out of this repo. Roles are handled by requirements.yml going forward. Dev roles are still in the repo but if they stick around a new repo will be made for it. * Made a bunch of changes * fixed a problem * Added a playbook to deploy grafana and added prometheus role to monitor things. * Updated cron to test * Updated cron to test * Updated cron * updated discord_webhook and now testing if cron will pick up the changes. * Fixed plex backup for now. * docker updates and working on nginx * pushing pending changes that need to go live for cron testing * fixed debug roles and updated discord test * fixed debug roles and updated discord test * Disabling test cron * its been awhile... I am not sure what I have done anymore but time to push my changes. * added newsbot configs, added to jenkins, starting to migrate to collections. * Updated inventory to support the network changes * jenkinsfile is now working in my local setup. * node2 is unhealthy and is removed from inv. I was doing something to this box months ago, but now i dont remember what it was." * updated images and adding them to jenkins for testing * removed the old image files and moved to my public image * Jenkins will now inform discord of jobs. Added post tasks. Added mediaserver common. * updated the backend update job and adding a jenkins pipeline to handle it for me. * updated the backup job again * Updated all the jekins jobs. Added a jenkins newsbot backup job. Adjusted newsbot plays to add backup and redeploy jobs. * updated newsbot backup playbook to make older backup files as needed. * Added debug message to report in CI what version is getting deployed. * I did something stupid and this device is not letting me login for now. * removing twitter source for now as I found a bandwidth related bug that wont get pushed for a bit * Adding a bunch of changes, some is cleanup and some are adds * updated the images * updated the kube common playbook * Started to work on ceph, stopped due to hardware resources, updated common, added monit, and starting to work on a playbook to handle my ssh access. * Added a role to deploy monit to my servers. Still needs some more updates before its ready * Here is my work on ceph, it might go away but I am not sure yet. * Starting to migrate my common playbook to a role, not done yet. * updated kube and inventory * updated gitignore
2022-01-28 16:22:11 -08:00
- name: Configure Media Server
hosts: mediaserver-back
#hosts: swarm-host
become: yes
vars:
update: false
containers:
- mediaback_search_1
- mediaback_son_1
- mediaback_get_1
- mediaback_rad_1
images:
- 'linuxserver/nzbhydra2:version-v3.9.0'
- 'linuxserver/sonarr:version-2.0.0.5344'
- 'linuxserver/nzbget:version-v21.0'
- 'linuxserver/radarr:version-3.0.1.4259'
tasks:
- name: stop and remove containers
docker_container:
name: "{{ item }}"
state: absent
loop: "{{ containers }}"
ignore_errors: yes
- name: Pull images
docker_image:
name: "{{ item }}"
source: pull
loop: "{{ images }}"
- name: deploy docker-compose
docker_compose:
project_name: mediaback
definition:
version: "3"
networks:
mediaback:
ipam:
driver: default
config:
- subnet: 172.16.10.0/16
services:
search:
image: "{{ images[0] }}"
restart: always
environment:
- PUID=0
- PGID=0
- TZ=Europe/London
ports:
- 5076:5076
volumes:
- "{{ pathConfig }}/hydra:/config"
- "{{ pathNfsTmp }}:/downloads"
networks:
mediaback:
ipv4_address: 172.16.10.10
get:
image: "{{ images[2] }}"
restart: always
environment:
- PUID=0
- PGID=0
- TZ=Europe/London
ports:
- 6789:6789
volumes:
- "{{ pathConfig }}/nzbget:/config"
- "{{ pathNfsTmp }}:/downloads"
networks:
mediaback:
ipv4_address: 172.16.10.11
son:
image: "{{ images[1] }}"
restart: always
environment:
- PUID=0
- PGID=0
- TZ=Europe/London
- UMASK_SET=022 #optional
ports:
- 8989:8989 #http
#- 9898:9898 #https
volumes:
- "{{ pathConfig }}/sonarr:/config"
- "{{ pathNfsMedia }}:/tv"
- "{{ pathNfsTmp}}:/downloads"
networks:
mediaback:
ipv4_address: 172.16.10.12
rad:
image: "{{ images[3] }}"
restart: always
environment:
- PUID=0
- PGID=0
- TZ=Europe/London
- UMASK_SET=022 #optional
ports:
- 7878:7878
volumes:
- "{{ pathConfig }}/radarr:/config"
- "{{ pathNfsMedia }}:/movies"
- "{{ pathNfsTmp }}:/downloads"
networks:
mediaback:
ipv4_address: 172.16.10.13