mirror of
				https://github.com/kevinveenbirkenbach/computer-playbook.git
				synced 2025-11-04 04:08:15 +00:00 
			
		
		
		
	Magento 2.4.8 refactor:
- Switch to split containers (markoshust/magento-php:8.2-fpm + magento-nginx:latest) - Disable central DB; use app-local MariaDB and pin to 11.4 - Composer bootstrap of Magento in php container (Adobe repo keys), idempotent via creates - Make setup:install idempotent; run as container user 'app' - Wire OpenSearch (security disabled) and depends_on ordering - Add credentials schema (adobe_public_key/adobe_private_key) - Update vars for php/nginx/search containers + MAGENTO_USER - Remove legacy docs (Administration.md, Upgrade.md) Context: changes derived from our ChatGPT session about getting Magento 2.4.8 running with MariaDB 11.4. Conversation: https://chatgpt.com/share/68b8dc30-361c-800f-aa69-88df514cb160
This commit is contained in:
		@@ -2,17 +2,36 @@
 | 
			
		||||
  include_role:
 | 
			
		||||
    name: sys-stk-full-stateful
 | 
			
		||||
  vars:
 | 
			
		||||
    docker_compose_flush_handlers:  true
 | 
			
		||||
    docker_compose_flush_handlers: true
 | 
			
		||||
 | 
			
		||||
- name: "Bootstrap Magento 2.4.8 source (exact working variant)"
 | 
			
		||||
  command: >
 | 
			
		||||
    docker exec
 | 
			
		||||
    -e COMPOSER_AUTH='{"http-basic":{"repo.magento.com":{"username":"{{ MAGENTO_REPO_PUBLIC_KEY }}","password":"{{ MAGENTO_REPO_PRIVATE_KEY }}"}}}'
 | 
			
		||||
    -e COMPOSER_HOME=/tmp/composer
 | 
			
		||||
    -e COMPOSER_CACHE_DIR=/tmp/composer/cache
 | 
			
		||||
    --user {{ MAGENTO_USER }}
 | 
			
		||||
    {{ MAGENTO_PHP_CONTAINER }} bash -lc 'set -e
 | 
			
		||||
      mkdir -p /tmp/composer/cache
 | 
			
		||||
      cd /var/www/html
 | 
			
		||||
      composer create-project --no-interaction --no-progress --repository-url=https://repo.magento.com/ magento/project-community-edition=2.4.8 .
 | 
			
		||||
      mkdir -p var pub/static pub/media app/etc
 | 
			
		||||
      chmod -R 775 var pub/static pub/media app/etc
 | 
			
		||||
    '
 | 
			
		||||
  args:
 | 
			
		||||
    creates: "{{ [ (MAGENTO_VOLUME | docker_volume_path), 'bin/magento' ] | path_join }}"
 | 
			
		||||
 | 
			
		||||
- name: "Run Magento setup:install (in container)"
 | 
			
		||||
  command: >
 | 
			
		||||
    docker compose exec -T application bash -lc "
 | 
			
		||||
    docker exec --user {{ MAGENTO_USER }} {{ MAGENTO_PHP_CONTAINER }} bash -lc "
 | 
			
		||||
    cd /var/www/html && bin/magento setup:install \
 | 
			
		||||
      --base-url='{{ MAGENTO_URL }}/' \
 | 
			
		||||
      --db-host=\"$MYSQL_HOST\" \
 | 
			
		||||
      --db-name=\"$MYSQL_DATABASE\" \
 | 
			
		||||
      --db-user=\"$MYSQL_USER\" \
 | 
			
		||||
      --db-password=\"$MYSQL_PASSWORD\" \
 | 
			
		||||
      --skip-db-validation \
 | 
			
		||||
      --db-engine=mysql \
 | 
			
		||||
      --search-engine='opensearch' \
 | 
			
		||||
      --opensearch-host=\"$OPENSEARCH_HOST\" \
 | 
			
		||||
      --opensearch-port=\"$OPENSEARCH_PORT_NUMBER\" \
 | 
			
		||||
@@ -22,11 +41,11 @@
 | 
			
		||||
      --admin-user=\"$MAGENTO_ADMIN_USERNAME\" \
 | 
			
		||||
      --admin-password=\"$MAGENTO_ADMIN_PASSWORD\""
 | 
			
		||||
  args:
 | 
			
		||||
    chdir: "{{ docker_compose.directories.instance }}"
 | 
			
		||||
    creates: "{{ [ (MAGENTO_VOLUME | docker_volume_path), 'app/etc/env.php' ] | path_join }}"
 | 
			
		||||
  register: magento_install
 | 
			
		||||
  changed_when: >
 | 
			
		||||
    (magento_install.stdout is defined and
 | 
			
		||||
     ('Magento installation complete' in magento_install.stdout
 | 
			
		||||
      or 'successfully installed' in magento_install.stdout))
 | 
			
		||||
 | 
			
		||||
- include_tasks: utils/run_once.yml
 | 
			
		||||
- include_tasks: utils/run_once.yml
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user