mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-09-20 17:26:04 +02:00
Refactor: unify Docker build config via build.yml.j2 include
Replaced duplicated inline build definitions in multiple docker-compose.yml.j2 templates with a shared include (roles/docker-container/templates/build.yml.j2). This ensures consistent use of pull_policy: never and Dockerfile context across services (Postgres, Bookwyrm, Bridgy Fed, Chess, Confluence, Jira, Moodle, OpenProject, Pretix, Roulette Wheel, WordPress, XWiki, Simpleicons). Conversation: https://chatgpt.com/share/68cd8f35-b764-800f-9b00-2c837103d2fb
This commit is contained in:
6
roles/docker-container/templates/build.yml.j2
Normal file
6
roles/docker-container/templates/build.yml.j2
Normal file
@@ -0,0 +1,6 @@
|
||||
{# integrate it into service sections to be build by Dockerfile #}
|
||||
pull_policy: never
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
{# pass Arguments here #}
|
@@ -3,10 +3,7 @@
|
||||
postgres:
|
||||
container_name: "{{ POSTGRES_CONTAINER }}"
|
||||
image: "{{ POSTGRES_CUSTOM_IMAGE_NAME }}"
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
pull_policy: never
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
command:
|
||||
- "postgres"
|
||||
- "-c"
|
||||
|
@@ -9,9 +9,7 @@
|
||||
(python manage.py initdb || true) &&
|
||||
python -m gunicorn bookwyrm.wsgi:application --bind 0.0.0.0:{{ container_port }}
|
||||
'
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
image: "{{ BOOKWYRM_CUSTOM_IMAGE }}"
|
||||
container_name: "{{ BOOKWYRM_CONTAINER }}"
|
||||
hostname: "{{ BOOKWYRM_HOSTNAME }}"
|
||||
|
@@ -1,9 +1,7 @@
|
||||
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
||||
|
||||
application:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
args:
|
||||
BRIDGY_REPO_URL: "{{ BRIDGY_REPO_URL }}"
|
||||
BRIDGY_REPO_BRANCH: "{{ BRIDGY_REPO_BRANCH }}"
|
||||
|
@@ -1,8 +1,6 @@
|
||||
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
||||
application:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
args:
|
||||
CHESS_VERSION: "{{ CHESS_VERSION }}"
|
||||
CHESS_REPO_URL: "{{ CHESS_REPO_URL }}"
|
||||
|
@@ -1,8 +1,6 @@
|
||||
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
||||
application:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
image: "{{ CONFLUENCE_CUSTOM_IMAGE }}"
|
||||
container_name: "{{ CONFLUENCE_CONTAINER }}"
|
||||
hostname: '{{ CONFLUENCE_HOSTNAME}}'
|
||||
|
@@ -1,9 +1,7 @@
|
||||
|
||||
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
||||
application:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
image: "{{ JIRA_CUSTOM_IMAGE }}"
|
||||
container_name: "{{ JIRA_CONTAINER }}"
|
||||
hostname: '{{ JIRA_HOSTNAME }}'
|
||||
|
@@ -3,10 +3,7 @@
|
||||
moodle:
|
||||
{% set container_port = 8080 %}
|
||||
container_name: {{ moodle_container }}
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
pull_policy: never
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
image: moodle_custom
|
||||
ports:
|
||||
- 127.0.0.1:{{ ports.localhost.http[application_id] }}:{{ container_port }}
|
||||
|
@@ -3,10 +3,7 @@ x-op-app: &app
|
||||
logging:
|
||||
driver: journald
|
||||
image: {{ openproject_custom_image }}
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
pull_policy: never
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
|
||||
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
||||
|
||||
@@ -19,6 +16,7 @@ x-op-app: &app
|
||||
{% include 'roles/docker-container/templates/base.yml.j2' %}
|
||||
image: {{ openproject_custom_image }}
|
||||
container_name: {{ openproject_proxy_name }}
|
||||
pull_policy: never
|
||||
command: "./docker/prod/proxy"
|
||||
ports:
|
||||
- "127.0.0.1:{{ ports.localhost.http[application_id] }}:80"
|
||||
|
@@ -1,8 +1,6 @@
|
||||
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
||||
application:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
image: "{{ PRETIX_IMAGE_CUSTOM }}"
|
||||
container_name: "{{ PRETIX_CONTAINER }}"
|
||||
hostname: '{{ PRETIX_HOSTNAME}}'
|
||||
|
@@ -1,9 +1,7 @@
|
||||
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
||||
application:
|
||||
container_name: roulette_application
|
||||
build:
|
||||
context: .
|
||||
pull_policy: never
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
ports:
|
||||
- 127.0.0.1:{{ ports.localhost.http[application_id] }}:8080
|
||||
restart: {{ DOCKER_RESTART_POLICY }}
|
||||
|
@@ -3,9 +3,7 @@
|
||||
{% include 'roles/docker-container/templates/base.yml.j2' %}
|
||||
image: {{ WORDPRESS_CUSTOM_IMAGE }}
|
||||
container_name: {{ WORDPRESS_CONTAINER }}
|
||||
build:
|
||||
context: .
|
||||
pull_policy: never
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
ports:
|
||||
- "127.0.0.1:{{ ports.localhost.http[application_id] }}:80"
|
||||
volumes:
|
||||
|
@@ -1,8 +1,6 @@
|
||||
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
||||
application:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
image: "{{ XWIKI_IMAGE_CUSTOM }}"
|
||||
container_name: "{{ XWIKI_CONTAINER }}"
|
||||
hostname: '{{ XWIKI_HOSTNAME}}'
|
||||
|
@@ -1,9 +1,6 @@
|
||||
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
||||
application:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
pull_policy: never
|
||||
{% include 'roles/docker-container/templates/build.yml.j2' %}
|
||||
image: simpleicons-server:latest
|
||||
container_name: simpleicons-server
|
||||
ports:
|
||||
|
Reference in New Issue
Block a user