Add dolibarr
This commit is contained in:
parent
d4872e6897
commit
f71f190b41
4 changed files with 83 additions and 0 deletions
|
@ -8,6 +8,7 @@
|
||||||
- { role: traefik, tags: ["traefik"] }
|
- { role: traefik, tags: ["traefik"] }
|
||||||
- { role: whoami, tags: ["whoami"] }
|
- { role: whoami, tags: ["whoami"] }
|
||||||
- { role: protonmail, tags: ["protonmail"] }
|
- { role: protonmail, tags: ["protonmail"] }
|
||||||
|
- { role: dolibarr, tags: ["dolibarr"] }
|
||||||
- { role: cloud, tags: ["cloud"] }
|
- { role: cloud, tags: ["cloud"] }
|
||||||
- { role: vaultwarden, tags: ["vaultwarden"] }
|
- { role: vaultwarden, tags: ["vaultwarden"] }
|
||||||
- { role: home_assistant, tags: ["home_assistant"] }
|
- { role: home_assistant, tags: ["home_assistant"] }
|
||||||
|
|
33
roles/dolibarr/tasks/base.yml
Normal file
33
roles/dolibarr/tasks/base.yml
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: Check dolibarr directory exist
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: dolibarr
|
||||||
|
state: directory
|
||||||
|
register: first_install
|
||||||
|
|
||||||
|
- name: Copy template conf
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: "{{ item.src }}"
|
||||||
|
dest: "dolibarr/{{ item.dest }}"
|
||||||
|
loop:
|
||||||
|
- { src: 'docker-compose.yml.j2', dest: 'docker-compose.yml' }
|
||||||
|
register: dolibarr_copy_templates_results
|
||||||
|
|
||||||
|
- name: Prepare volume folder
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: "{{ item }}"
|
||||||
|
state: directory
|
||||||
|
loop:
|
||||||
|
- "{{ server.work_dir }}/dolibarr/base/documents"
|
||||||
|
- "{{ server.work_dir }}/dolibarr/base/html"
|
||||||
|
- "{{ server.work_dir }}/dolibarr/db"
|
||||||
|
become: true
|
||||||
|
|
||||||
|
- name: Update and restart container
|
||||||
|
community.docker.docker_compose:
|
||||||
|
project_src: dolibarr
|
||||||
|
state: present
|
||||||
|
pull: true
|
||||||
|
restarted: "{{ dolibarr_copy_templates_results.changed }}"
|
||||||
|
become: true
|
4
roles/dolibarr/tasks/main.yml
Normal file
4
roles/dolibarr/tasks/main.yml
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- ansible.builtin.import_tasks: base.yml
|
||||||
|
name: base
|
45
roles/dolibarr/templates/docker-compose.yml.j2
Normal file
45
roles/dolibarr/templates/docker-compose.yml.j2
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
mariadb:
|
||||||
|
image: mariadb:latest
|
||||||
|
environment:
|
||||||
|
MYSQL_ROOT_PASSWORD: root
|
||||||
|
MYSQL_DATABASE: dolibarr
|
||||||
|
volumes:
|
||||||
|
- {{ server.work_dir }}/dolibarr/db:/var/lib/mysql
|
||||||
|
networks:
|
||||||
|
- internal
|
||||||
|
|
||||||
|
dolibarr:
|
||||||
|
image: upshift/dolibarr:latest
|
||||||
|
restart: always
|
||||||
|
container_name: dolibarr
|
||||||
|
environment:
|
||||||
|
DOLI_DB_HOST: mariadb
|
||||||
|
DOLI_DB_USER: root
|
||||||
|
DOLI_DB_PASSWORD: root
|
||||||
|
DOLI_DB_NAME: dolibarr
|
||||||
|
DOLI_URL_ROOT: 'http://0.0.0.0'
|
||||||
|
DOLI_ADMIN_LOGIN: admin
|
||||||
|
DOLI_ADMIN_PASSWORD: admin
|
||||||
|
PHP_INI_date.timezone: 'Europe/Paris'
|
||||||
|
DOLI_INSTALL_AUTO: 1
|
||||||
|
volumes:
|
||||||
|
- {{ server.work_dir }}/dolibarr/base/documents:/var/www/documents
|
||||||
|
- {{ server.work_dir }}/dolibarr/base/html:/var/www/html
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
- internal
|
||||||
|
labels:
|
||||||
|
- "traefik.enable=true"
|
||||||
|
- "traefik.http.routers.dolibarr-secure.entrypoints=https"
|
||||||
|
- "traefik.http.routers.dolibarr-secure.rule=Host(`dolibarr.{{ server.domain }}`)"
|
||||||
|
- "traefik.http.routers.dolibarr-secure.tls=true"
|
||||||
|
- "traefik.http.routers.dolibarr-secure.tls.certresolver=sslResolver"
|
||||||
|
- "traefik.docker.network=proxy"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
internal:
|
||||||
|
proxy:
|
||||||
|
external: true
|
Loading…
Reference in a new issue