Commerce 버전 업그레이드
Adobe Commerce 코드 베이스를 최신 버전으로 업그레이드할 수 있습니다. 프로젝트를 업그레이드하기 전에 설치 안내서의 시스템 요구 사항 에서 최신 소프트웨어 버전 요구 사항을 검토하십시오.
프로젝트 구성에 따라 업그레이드 작업에는 다음이 포함될 수 있습니다.
- 새 Adobe Commerce 버전과의 호환성을 위해 MariaDB(MySQL), OpenSearch, RabbitMQ 및 Redis의 새 버전으로
.magento/services.yaml
파일을 업데이트하십시오. - 후크 및 환경 변수에 대한 새로운 설정으로
.magento.app.yaml
파일을 업데이트합니다. - 타사 확장을 지원되는 최신 버전으로 업그레이드하십시오.
-
Pro 프로젝트의 경우 및환경에서만 서비스를 설치하거나 업데이트하려면
Staging
Adobe Commerce 지원 티켓을 제출Production
해야 합니다. -
필요한 서비스 변경 사항을 표시하고 업데이트된
.magento.app.yaml
및services.yaml
파일을 포함하고 티켓에 PHP 버전을 명시하십시오. PHP 버전, 확장, 환경 설정에 대한 셀프 서비스 변경 내용은 응용 프로그램 구성의 PHP 설정 을 참조하십시오. -
라이브 프로덕션 환경(Pro 전용)을 변경하려면 최소 48시간 이상 알림이 필요합니다. 이를 통해 클라우드 인프라 팀은 리소스를 마샬링하고 보안 업그레이드를 수행할 수 있는 충분한 시간을 확보할 수 있습니다. 공지 기간은 인프라 팀이 요청을 승인하고 주말을 제외하고 업그레이드 일정을 잡을 때 시작됩니다. 예를 들어 월요일에 서비스 업그레이드를 완료하려면 예약된 업그레이드에 대한 승인을 수요일까지 받아야 합니다. 최대 수요 기간 동안 요청을 처리하는 데 더 많은 시간이 걸릴 수 있습니다.
구성 파일
애플리케이션을 업그레이드하기 전에 클라우드 인프라 또는 애플리케이션에서 Adobe Commerce의 기본 구성 설정을 변경하기 위해 프로젝트 구성 파일을 업데이트해야 합니다. 최신 기본값은 magento-cloud GitHub 저장소에서 찾을 수 있습니다.
composer.json
업그레이드하기 전에 항상 composer.json
파일의 종속성이 Adobe Commerce 버전과 호환되는지 확인하십시오.
Adobe Commerce 버전 2.4.4 이상의 composer.json
파일을 업데이트하려면 다음을 **.
-
allow-plugins
섹션에 다음config
을(를) 추가합니다.code language-json "config": { "allow-plugins": { "dealerdirect/phpcodesniffer-composer-installer": true, "laminas/laminas-dependency-plugin": true, "magento/*": true } },
-
require
섹션에 다음 플러그인을 추가하십시오.code language-json "require": { "magento/composer-root-update-plugin": "^2.0.3" },
-
extra:component_paths
섹션에 다음 구성 요소를 추가합니다.code language-json "extra": { "component_paths": { "tinymce/tinymce": "lib/web/tiny_mce_5" }, },
-
파일을 저장합니다. 아직 분기에 변경 사항을 커밋하거나 푸시하지 마십시오.
-
업그레이드 프로세스를 계속합니다.
프로젝트 백업
업그레이드하기 전에 프로젝트의 백업을 만드는 것이 좋습니다. 다음 단계를 사용하여 통합, 스테이징 및 프로덕션 환경을 백업합니다.
통합 환경 데이터베이스 및 코드를 백업하려면:
-
원격 데이터베이스의 로컬 백업을 만듭니다.
code language-bash magento-cloud db:dump
note note NOTE magento-cloud db:dump
명령은 테이블을 잠그지 않고 데이터베이스를 백업할 수 있도록 플래그를 사용하여mysqldump--single-transaction
명령을 실행합니다. -
코드 및 미디어를 백업합니다.
code language-bash php bin/magento setup:backup --code [--media]
소스 제어에 이미 많은 정적 파일이 있는 경우
[--media]
을(를) 생략할 수도 있습니다.
배포 전에 스테이징 또는 프로덕션 환경 데이터베이스를 백업하려면:
애플리케이션 업그레이드
응용 프로그램을 업그레이드하기 전에 서비스 버전 정보에서 최신 소프트웨어 버전 요구 사항을 검토하십시오.
응용 프로그램 버전을 업그레이드하려면:
-
로컬 워크스테이션에서 프로젝트 디렉터리로 변경합니다.
-
대상 업그레이드 버전에 대해 버전 제약 조건을 설정하십시오. 이 단계는 대상 버전이 기존 제약 조건을 벗어나는 경우에만 필요합니다.
code language-bash composer require-commerce "magento/magento-cloud-metapackage":">=CURRENT_VERSION <NEXT_VERSION" --no-update
note note NOTE ece-tools
패키지를 업데이트하려면 버전 제약 조건 구문을 사용해야 합니다.composer.json
파일에서 업그레이드에 사용하는 응용 프로그램 템플릿 버전에 대한 버전 제약 조건을 찾을 수 있습니다. -
composer.json
파일을 핵심 Commerce 업그레이드 버전으로 업데이트하십시오.code language-bash composer require-commerce magento/product-enterprise-edition 2.4.8 --no-update
-
B2B를 사용하는 경우
composer.json
파일을 Commerce용 지원되는 버전(으)로 업데이트하십시오.code language-bash composer require-commerce magento/extension-b2b 1.5.2 --no-update
-
프로젝트 종속성을 업데이트합니다.
code language-bash composer update
-
현재 적용된 패치를 검토합니다.
-
m2-hotfixes
디렉터리에 패치가 설치되어 있는 경우 Adobe Commerce 지원 티켓을 제출하고 Adobe Commerce 지원 팀과 함께 새 버전에 적용할 수 있는 패치를 확인하십시오.m2-hotfixes
디렉터리에서 적용할 수 없는 패치를 제거합니다. -
[ 파일에 ]품질 패치
.magento.env.yaml
가 적용된 경우 새 버전에 계속 적용할 수 있는지 확인하십시오.QUALITY_PATCHES
파일의.magento.env.yaml
섹션에서 적용할 수 없는 패치를 제거합니다.
메서드 1: 품질 패치 릴리스 정보에서 해당 버전을 확인
메서드 2: 사용 가능한 패치와 상태 보기
메서드 3: 패치 검색
-
-
코드 변경 사항을 추가, 커밋 및 푸시합니다.
code language-bash git add -A
code language-bash git commit -m "Upgrade"
code language-bash git push origin <branch-name>
Composer가 기본 패키지를 마샬링하는 방식 때문에 변경된 모든 파일을 소스 제어에 추가하려면
git add -A
이(가) 필요합니다. 기본 패키지(composer install
및composer update
)의magento/magento2-base
및magento/magento2-ee-base
파일을 모두 패키지 루트로 마샬링합니다.작성기가 마샬링하는 파일은 새 버전의 Adobe Commerce에 속하므로 동일한 파일의 오래된 버전을 덮어씁니다. 현재 Adobe Commerce에서는 마샬링을 사용할 수 없으므로 마샬링된 파일을 소스 제어에 추가해야 합니다.
-
배포가 완료될 때까지 기다립니다.
-
SSH를 사용하여 로그인하고 버전을 확인하여 통합, 스테이징 또는 프로덕션 환경에서 업그레이드를 확인합니다.
code language-bash php bin/magento --version
확장 업그레이드
Marketplace 또는 기타 회사 사이트에서 타사 확장 및 모듈 페이지를 검토하고 클라우드 인프라에서 Adobe Commerce 및 Adobe Commerce에 대한 지원을 확인하십시오. 타사 확장 및 모듈을 업그레이드해야 하는 경우 Adobe에서는 확장이 비활성화된 새 통합 분기에서 작업하는 것이 좋습니다.
확장을 확인하고 업그레이드하려면:
-
로컬 워크스테이션에 분기를 만듭니다.
-
필요에 따라 확장을 비활성화합니다.
-
사용 가능한 경우 확장 업그레이드를 다운로드합니다.
-
타사 설명서에 따라 업그레이드를 설치합니다.
-
확장을 활성화하고 테스트합니다.
-
코드 변경 사항을 원격에 추가, 커밋 및 푸시합니다.
-
을 푸시하고 통합 환경에서 테스트합니다.
-
스테이징 환경으로 푸시하여 사전 프로덕션 환경에서 테스트합니다.
Adobe에서는 사이트 실행 프로세스에서 업그레이드된 확장을 포함하여 프로덕션 환경을 before 업그레이드하는 것이 좋습니다.
업그레이드 문제 해결
업그레이드가 실패하는 경우 브라우저에 상점 또는 관리 패널에 액세스할 수 없다는 오류 메시지가 표시됩니다.
There has been an error processing your request
Exception printing is disabled by default for security reasons.
Error log record number: <error-number>
오류를 해결하려면:
-
로컬 워크스테이션에서 프로젝트 디렉터리로 변경합니다.
-
SSH를 사용하여 원격 환경에 로그인합니다.
code language-bash magento-cloud ssh
-
./app/var/report/<error number>
파일을 엽니다. -
로그를 검사하고 문제의 원인을 확인합니다.
-
코드 변경 사항을 추가, 커밋 및 푸시합니다.
code language-bash git add -A && git commit -m "Fixed deployment failure" && git push origin <branch-name>