Added Mealie
This commit is contained in:
29
ansible/roles/mealie/tasks/main.yml
Normal file
29
ansible/roles/mealie/tasks/main.yml
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
- name: Create service user
|
||||||
|
user:
|
||||||
|
name: "{{ role_name }}"
|
||||||
|
system: true
|
||||||
|
register: service_user
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Create install directory
|
||||||
|
file:
|
||||||
|
path: "{{ install_directory }}/{{ role_name }}"
|
||||||
|
state: directory
|
||||||
|
owner: "{{ docker_user }}"
|
||||||
|
mode: "{{ docker_compose_directory_mask }}"
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Copy docker-compose file to destination
|
||||||
|
template:
|
||||||
|
src: docker-compose.yml
|
||||||
|
dest: "{{ install_directory }}/{{ role_name }}/docker-compose.yml"
|
||||||
|
owner: "{{ docker_user }}"
|
||||||
|
mode: "{{ docker_compose_file_mask }}"
|
||||||
|
validate: docker-compose -f %s config
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Start docker container
|
||||||
|
community.docker.docker_compose:
|
||||||
|
project_src: "{{ install_directory }}/{{ role_name }}"
|
||||||
|
pull: true
|
||||||
|
remove_orphans: yes
|
65
ansible/roles/mealie/templates/docker-compose.yml
Normal file
65
ansible/roles/mealie/templates/docker-compose.yml
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
version: "{{ docker_compose_version }}"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
traefik:
|
||||||
|
external: true
|
||||||
|
default:
|
||||||
|
internal: true
|
||||||
|
|
||||||
|
services:
|
||||||
|
mealie-frontend:
|
||||||
|
image: hkotel/mealie:frontend-v1.0.0beta-5
|
||||||
|
restart: unless-stopped
|
||||||
|
depends_on:
|
||||||
|
- mealie-api
|
||||||
|
networks:
|
||||||
|
- default
|
||||||
|
- traefik
|
||||||
|
environment:
|
||||||
|
- API_URL=http://mealie-api:9000 #
|
||||||
|
volumes:
|
||||||
|
- "{{ data_dir }}/mealie:/app/data"
|
||||||
|
labels:
|
||||||
|
traefik.enable: true
|
||||||
|
traefik.http.routers.mealie.rule: "Host(`mealie.{{ personal_domain }}`)"
|
||||||
|
traefik.http.services.mealie.loadbalancer.server.port: 3000
|
||||||
|
|
||||||
|
mealie-api:
|
||||||
|
image: hkotel/mealie:api-v1.0.0beta-5
|
||||||
|
restart: unless-stopped
|
||||||
|
depends_on:
|
||||||
|
- postgres
|
||||||
|
networks:
|
||||||
|
- default
|
||||||
|
volumes:
|
||||||
|
- "{{ data_dir }}/mealie:/app/data"
|
||||||
|
environment:
|
||||||
|
- ALLOW_SIGNUP=false
|
||||||
|
- "PUID={{ service_user.uid }}"
|
||||||
|
- "PGID={{ service_user.uid }}"
|
||||||
|
- "TZ={{ timezone }}"
|
||||||
|
- MAX_WORKERS=1
|
||||||
|
- WEB_CONCURRENCY=1
|
||||||
|
- "BASE_URL=https://mealie.{{ personal_domain }}"
|
||||||
|
- DB_ENGINE=postgres
|
||||||
|
- POSTGRES_USER=mealie
|
||||||
|
- POSTGRES_PASSWORD=mealie
|
||||||
|
- POSTGRES_SERVER=postgres
|
||||||
|
- POSTGRES_PORT=5432
|
||||||
|
- POSTGRES_DB=mealie
|
||||||
|
- "DEFAULT_EMAIL={{ email }}"
|
||||||
|
- TOKEN_TIME=168
|
||||||
|
dns:
|
||||||
|
- 10.0.0.1
|
||||||
|
|
||||||
|
postgres:
|
||||||
|
container_name: postgres
|
||||||
|
image: postgres
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- default
|
||||||
|
volumes:
|
||||||
|
- "{{ data_dir }}/postgres/mealie:/var/lib/postgresql/data"
|
||||||
|
environment:
|
||||||
|
POSTGRES_PASSWORD: mealie
|
||||||
|
POSTGRES_USER: mealie
|
7
ansible/roles/mealie/vars/main.yml
Normal file
7
ansible/roles/mealie/vars/main.yml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
email: !vault |
|
||||||
|
$ANSIBLE_VAULT;1.1;AES256
|
||||||
|
30343965383433393930313337303637353362616563313863396433323939393864393436376534
|
||||||
|
6438663537386464623830316136643461356631316436360a636664323436303464376630616639
|
||||||
|
62653263633531343733313137303863623562616632313236376466313132636234633438616164
|
||||||
|
3030303934343761390a663734333566323234613434633636353665623530643262353162383237
|
||||||
|
66633863376332663064346132356238333561663438643232646463646632656361
|
Reference in New Issue
Block a user