마젠토(Magento) 2.4.x에 오프라인에서 사용할 POS(Point Of Sales) Extension을 설치하는 과정에 대해서 알아보겠습니다. 마젠토 Extension은 Magento Core 기능을 확장하고 고객에게 더 나은 쇼핑 경험을 제공하기 위해서 다양한 기능을 가진 Extension이 존재합니다. 마젠토가 인터넷 쇼핑몰에 특화되어 있지만 마젠토에 POS Extension을 설치하여 오프라인 가게에서도 사용할 수 있게 됨으로써 온, 오프라인에서의 상품 재고의 통합관리나 고객서비스, 결제, 배송 및 보안등의 기능을 일원화하여 관리할 수 있는 강점이 있습니다. 여기서는 오프라인 가게의 POS를 위해서 Magestore POS를 수동(manual) 설치하는 과정을 소개하도록 하겠습니다.
설치를 위한 준비사항
- Magento 2.4.x가 설치되어 운영되는 환경
- Install 하기 전 Magento백업
- POS Extension package
설치과정
1) SSH로 마젠토 서버에 접속하여 Extension설치과정에서 온라인 Site에 접속하려는 사용자를 차단하여 웹사이트를 업데이트하거나 유지보수작업을 위해서 사용하는 명령어로 Maintenance Mode를 Enable 시킨다.
$ php bin/magento maintenance:enable
2) Index작업등 백그라운드에서 작업되는 타스크를 사전에 제거하기 위해서 마젠토 Cron작업을 Off 한다. 마젠토의 스케쥴러에 등록된 모든 Cron Job을 삭제하는 데 사용된다.
$ php bin/magento cron:remove
3) 개발자 모드를 On 한다. 개발자 모드는 개발관련하여 디버깅하는 필요한 정보를 제공하는 기능을 가지고 있으며 Extension설치 시에도 호환성 문제등 발생 시 Troubleshooting을 용이하게 하는 정보를 얻을 수 있는 장점이 있다. 개발자 모드에서는 app/etc/env.php파일을 update 할 수 있기 때문에 개발자 모드로 전환하기 전에 env.php파일을 미리 백업을 받아두는 것이 안전하다.
$ php bin/magento deploy:mode:set developer
4) Extension개발사에서 제공하는 Scratch파일을 Magento 홈디렉터리에 FTP를 이용해서 upload 한다. Upload 된 파일을 tar나 unzip 등 압축파일 유형에 따라 복원한다.
$ tar -xf <package_name>
5) POS 인스톨을 위해서 upgrade명령을 실행한다. 이 명령어는 마젠토 모듈이나 Extension의 데이터 스키마 업데이트를 수행하는 데 사용된다.
$ php bin/magento setup:upgrade
6) POS Client전개, 즉 웹포스의 정적파일을 배포하는 데 사용되는 명령어로서 webPOS모듈이 마젠토의 pub/static 디렉터리로 복사된다.
$ php bin/magento webpos:deploy
7) Code Compile을 수행한다
$php bin/magento setup:di:compile
8) Magestore POS시스템에 포함된 바코드를 설치한다. 바코드는 composer는 PHP용 패키지관리시스템으로 사용되는 종속성이나 라이브러리를 쉽게 관리할 수 있도록 해준다.
$ composer require laminas/laminas-barcode ^2.8
$ php bin/magento setup:upgrade
9) Extension이 정상설치되었으면, Cache를 Clean 하고 Magento Cron을 실행한다.
$ php bin/magento cache:clean
$ php bin/magento cron:install
10) 데이터베이스의 인덱스를 reindex 한다.
$ php bin/magento indexer:reindex
11) 개발자 모드에서 Live시스템을 위한 Production mode로 전환한다.
$ php bin/magento deploy:mode:set production
12) Maintenance mode해제하여 시스템이 온라인에서도 정상가동되도록 한다.
$ php bin/magento maintenance:disable
13) 예기치 않은 문제가 발생 시 방금 설치된 Magestore POS관련 모듈들을 Disable 하여 디버깅작업을 수행하도록 한다.
$ php bin/magento module:status | grep -i 'Magestore' | xargs php bin/magento module:disable
맺음말
composer로 설치되는 바코드시스템에서 에러 메시지가 있었지만 기본적인 설치에는 문제가 없었습니다. 마젠토의 Web POS Extension이 성공적으로 설치되어 Sales의 온오프라인 통합화로 관리 프로세스가 간소화를 기대하고 있습니다.
'관심분야' 카테고리의 다른 글
마젠토(Magento)에서 구글 지도 API 설정하기 (0) | 2023.03.28 |
---|---|
마젠토(Magento)에서 거래 Transaction을 위한 Elastic메일 설정 (0) | 2023.03.28 |
마젠토(Magento)2.4.5에서 Price Reindex Error처리 (1) | 2023.03.16 |
구글 Gmail을 SMTP 서버로 설정하기 (1) | 2023.03.15 |
마젠토(Magento)2.4.x에서 성능향상을 위한 Redis 캐시 설정하기 (0) | 2023.03.10 |
댓글