changed from embedded ansible docker to docker-compose files

This commit is contained in:
Kevin Veen-Birkenbach 2022-02-02 12:12:08 +01:00
parent 217135cf52
commit 535d2e797e
9 changed files with 195 additions and 107 deletions

View File

@ -0,0 +1,8 @@
---
- name: recreate gitea
command:
cmd: docker-compose -p gitea up -d --force-recreate
chdir: /home/administrator/docker-compose/gitea/
environment:
COMPOSE_HTTP_TIMEOUT: 600
DOCKER_CLIENT_TIMEOUT: 600

View File

@ -6,45 +6,12 @@
template: src=roles/native-docker-reverse-proxy/templates/domain.conf.j2 dest=/etc/nginx/conf.d/{{domain}}.conf template: src=roles/native-docker-reverse-proxy/templates/domain.conf.j2 dest=/etc/nginx/conf.d/{{domain}}.conf
notify: restart nginx notify: restart nginx
- name: container present - name: "create /home/administrator/docker-compose/gitea/"
docker_compose: file:
project_name: gitea path: "/home/administrator/docker-compose/gitea/"
definition: state: directory
application: mode: 0755
restart: always
image: gitea/gitea:latest - name: add docker-compose.yml
log_driver: journald template: src=docker-compose.yml.j2 dest=/home/administrator/docker-compose/gitea/docker-compose.yml
environment: notify: recreate gitea
- USER_UID=1000
- USER_GID=1000
- DB_TYPE=mysql
- DB_HOST=database:3306
- DB_NAME=gitea
- DB_USER=gitea
- DB_PASSWD={{gitea_database_password}}
- SSH_PORT={{ssh_port}}
- SSH_LISTEN_PORT=22
- DOMAIN={{domain}}
- SSH_DOMAIN={{domain}}
- RUN_MODE="{{run_mode}}"
- ROOT_URL="https://{{domain}}/"
ports:
- "127.0.0.1:{{http_port}}:3000"
- "{{ssh_port}}:22"
links:
- database
volumes:
- gitea-data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
database:
image: mariadb
log_driver: journald
environment:
MYSQL_DATABASE: "gitea"
MYSQL_USER: "gitea"
MYSQL_PASSWORD: "{{gitea_database_password}}"
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
volumes:
- gitea-database:/var/lib/mysql
restart: always

View File

@ -0,0 +1,56 @@
version: '3'
services:
application:
logging:
driver: journald
restart: always
image: gitea/gitea:latest
environment:
- USER_UID=1000
- USER_GID=1000
- DB_TYPE=mysql
- DB_HOST=database:3306
- DB_NAME=gitea
- DB_USER=gitea
- DB_PASSWD={{gitea_database_password}}
- SSH_PORT={{ssh_port}}
- SSH_LISTEN_PORT=22
- DOMAIN={{domain}}
- SSH_DOMAIN={{domain}}
- RUN_MODE="{{run_mode}}"
- ROOT_URL="https://{{domain}}/"
ports:
- "127.0.0.1:{{http_port}}:3000"
- "{{ssh_port}}:22"
links:
- database
volumes:
- data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
depends_on:
- database
database:
logging:
driver: journald
image: mariadb
restart: always
environment:
MYSQL_DATABASE: "gitea"
MYSQL_USER: "gitea"
MYSQL_PASSWORD: "{{gitea_database_password}}"
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
volumes:
- database:/var/lib/mysql
healthcheck:
test: "/usr/bin/mysql --user=gitea --password={{gitea_database_password}} --execute \"SHOW DATABASES;\""
interval: 3s
timeout: 1s
retries: 5
volumes:
database:
data:
networks:
default:
driver: bridge

View File

@ -0,0 +1,8 @@
---
- name: recreate wordpress
command:
cmd: docker-compose -p wordpress up -d --force-recreate
chdir: /home/administrator/docker-compose/wordpress/
environment:
COMPOSE_HTTP_TIMEOUT: 600
DOCKER_CLIENT_TIMEOUT: 600

View File

@ -11,36 +11,12 @@
loop: "{{domains}}" loop: "{{domains}}"
notify: restart nginx notify: restart nginx
- name: "setup wordpress" - name: "create /home/administrator/docker-compose/wordpress/"
environment: file:
DOCKER_CLIENT_TIMEOUT: 120 path: "/home/administrator/docker-compose/wordpress/"
COMPOSE_HTTP_TIMEOUT: 120 state: directory
docker_compose: mode: 0755
project_name: wordpress
definition: - name: add docker-compose.yml
application: template: src=docker-compose.yml.j2 dest=/home/administrator/docker-compose/wordpress/docker-compose.yml
log_driver: journald notify: recreate wordpress
image: wordpress
restart: always
ports:
- "127.0.0.1:{{http_port}}:80"
environment:
WORDPRESS_DB_HOST: database:3306
WORDPRESS_DB_USER: "wordpress"
WORDPRESS_DB_PASSWORD: "{{wordpress_database_password}}"
WORDPRESS_DB_NAME: "wordpress"
links:
- database
volumes:
- wordpress-data:/var/www/html
database:
log_driver: journald
image: mariadb
restart: always
environment:
MYSQL_DATABASE: "wordpress"
MYSQL_USER: "wordpress"
MYSQL_PASSWORD: "{{wordpress_database_password}}"
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
volumes:
- wordpress-database:/var/lib/mysql

View File

@ -0,0 +1,44 @@
version: '3'
services:
application:
logging:
driver: journald
image: wordpress
restart: always
ports:
- "127.0.0.1:{{http_port}}:80"
environment:
WORDPRESS_DB_HOST: database:3306
WORDPRESS_DB_USER: "wordpress"
WORDPRESS_DB_PASSWORD: "{{wordpress_database_password}}"
WORDPRESS_DB_NAME: "wordpress"
links:
- database
volumes:
- data:/var/www/html
depends_on:
- database
database:
logging:
driver: journald
image: mariadb
restart: always
environment:
MYSQL_DATABASE: "wordpress"
MYSQL_USER: "wordpress"
MYSQL_PASSWORD: "{{wordpress_database_password}}"
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
volumes:
- database:/var/lib/mysql
healthcheck:
test: "/usr/bin/mysql --user=wordpress --password={{wordpress_database_password}} --execute \"SHOW DATABASES;\""
interval: 3s
timeout: 1s
retries: 5
volumes:
database:
data:
networks:
default:
driver: bridge

View File

@ -0,0 +1,8 @@
---
- name: recreate yourls
command:
cmd: docker-compose -p yourls up -d --force-recreate
chdir: /home/administrator/docker-compose/yourls/
environment:
COMPOSE_HTTP_TIMEOUT: 600
DOCKER_CLIENT_TIMEOUT: 600

View File

@ -6,35 +6,12 @@
template: src=roles/native-docker-reverse-proxy/templates/domain.conf.j2 dest=/etc/nginx/conf.d/{{domain}}.conf template: src=roles/native-docker-reverse-proxy/templates/domain.conf.j2 dest=/etc/nginx/conf.d/{{domain}}.conf
notify: restart nginx notify: restart nginx
- name: "setup yourls" - name: "create /home/administrator/docker-compose/yourls/"
environment: file:
DOCKER_CLIENT_TIMEOUT: 120 path: "/home/administrator/docker-compose/yourls/"
COMPOSE_HTTP_TIMEOUT: 120 state: directory
docker_compose: mode: 0755
project_name: yourls
definition: - name: add docker-compose.yml
application: template: src=docker-compose.yml.j2 dest=/home/administrator/docker-compose/yourls/docker-compose.yml
image: yourls notify: recreate yourls
restart: always
ports:
- "127.0.0.1:{{http_port}}:80"
environment:
YOURLS_DB_HOST: "database:3306"
YOURLS_DB_USER: "yourls"
YOURLS_DB_PASS: "{{yourls_database_password}}"
YOURLS_DB_NAME: "yourls"
YOURLS_SITE: "https://{{domain}}"
YOURLS_USER: "{{yourls_user}}"
YOURLS_PASS: "{{yourls_user_password}}"
links:
- database
database:
image: mariadb
restart: always
environment:
MYSQL_DATABASE: "yourls"
MYSQL_USER: "yourls"
MYSQL_PASSWORD: "{{yourls_database_password}}"
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
volumes:
- yourls-database:/var/lib/mysql

View File

@ -0,0 +1,44 @@
version: '3'
services:
application:
logging:
driver: journald
image: yourls
restart: always
ports:
- "127.0.0.1:{{http_port}}:80"
environment:
YOURLS_DB_HOST: "database:3306"
YOURLS_DB_USER: "yourls"
YOURLS_DB_PASS: "{{yourls_database_password}}"
YOURLS_DB_NAME: "yourls"
YOURLS_SITE: "https://{{domain}}"
YOURLS_USER: "{{yourls_user}}"
YOURLS_PASS: "{{yourls_user_password}}"
links:
- database
depends_on:
- database
database:
logging:
driver: journald
image: mariadb
restart: always
environment:
MYSQL_DATABASE: "yourls"
MYSQL_USER: "yourls"
MYSQL_PASSWORD: "{{yourls_database_password}}"
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
volumes:
- database:/var/lib/mysql
healthcheck:
test: "/usr/bin/mysql --user=yourls --password={{yourls_database_password}} --execute \"SHOW DATABASES;\""
interval: 3s
timeout: 1s
retries: 5
volumes:
database:
networks:
default:
driver: bridge