그누보드5(영카트) 로컬 개발 환경 설정 #2 > 그누보드5 팁자료실

그누보드5 팁자료실

그누보드5(영카트) 로컬 개발 환경 설정 #2 정보

그누보드5(영카트) 로컬 개발 환경 설정 #2

본문

Docker를 이용한 laradock입니다. 윈도우, 맥, 리눅스 모두 가능합니다.

 

laradock의 깃헙 소스를 보시면 https://github.com/laradock/laradock

아주 많은 것들이 있습니다.

laradock의 기본은 하나의 컨테이너에 하나의 모듈이 실행된다고 보시면 됩니다.

 

Laravel로 예를 든다고 하면

DB는 Postgresql을 사용하고,  PHP7.4에 nginx사용하고,

Redis와 elasticsearch, beanstalk를 사용해서 개발한다고 가정했을 때

 

docker-compose up -d nginx postgresql redis elasticsearch beanstalkd 식으로 실행하면 됩니다.

 

1. Docker를 설치합니다.

https://sir.kr/so_server/2924

 

2. Laradock 설치하기

https://sir.kr/so_server/2925

https://sir.kr/so_server/2926

 

3. Laradock과 Nginx를 사용해서 그누보드5.4 설치해 보기

https://sir.kr/so_server/2930

 

laradock 안에 있는 .env 파일(env-example에서 카피함.)에 모든 설정이 들어가 있습니다.

 

주로 사용하게 되는 것

 

프로젝트 디렉토리 설정 

APP_CODE_PATH_HOST=../

 

데이타베이스의 위치

# Choose storage path on your machine. For all storage systems

DATA_PATH_HOST=~/.laradock/data

 

php버전 변경하기

# Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM).

# Accepted values: 7.4 - 7.3 - 7.2 - 7.1 - 7.0 - 5.6

PHP_VERSION=7.3

 

그리고 각 Container에 대한 옵션들이 있습니다.

여기서 WORKSPACE가 원하는 파일이 들어가 있는 곳입니다. (그누보드5면 해당 php코드들이.)

### WORKSPACE #############################################

이 아래에 다양한 옵션들 사용하시면 됩니다.

composer, node, yarn등은 기본적으로 설치되어 있습니다.

 

** 중간에 xdebug 옵션도 있는데.  false로 되어 있네요.. 

 

MySQL / MariaDB에는

데이타베이스 이름/유저/패스워드/루트 패스워드를 변경가능합니다.

 

현재 테스트/공부중인 것은

caddy 서버 https://caddyserver.com/  2.0beta로 업데이트가 되어야 되는데..

https://sir.kr/so_server/2929

 

Traefik https://docs.traefik.io/  2.x버전으로 업데이트가 필요함

https://sir.kr/so_server?sca=&sfl=wr_subject%7C%7Cwr_content&stx=traefik

 

Dockerfile 관련 매뉴얼 https://docs.docker.com/engine/reference/builder/

구글 한글 번역

https://sir.kr/so_server/2968

https://sir.kr/so_server/2973

https://sir.kr/so_server/2974

 

Docker-Compose관련 매뉴얼 https://docs.docker.com/compose/compose-file/

 

최종 목표는 Kubernetes까지 1강-7강까지 https://sir.kr/so_server/2943

 

그누보드나 영카트를 위해서 실행시켜야 될 명령어는 아래와 같습니다.

docker-compose up -d nginx mysql phpmyadmin

 

처음 이미지 빌드에만 시간이 걸립니다.

 

docker-compose ps 로 해 보면 총 6개가 실행되고 있을 알수 있습니다.

docker-in-docker와 php-fpm, workspace 세개가 더 생겼네요

php-fpm은 php7.3이 돌고 있고,

workspace는 코드가 들어가 있는 것이고..

docker-in-docker는 나중에 찾아 보겠습니다.

 

800595458_1581113511.5442.png

 

state가 up이 아닌  exit 가 나오면 뭔가 문제가 있는 것입니다.

 

docker-compose logs docker-in-docker 으로 log를 체크해 봅니다.

 

docker-compose exec workspace bash 로 접속해 보겠습니다.

php -v

node -v 등을 체크해 보고

/var/www 아래에 laradock이 보이면  Host 디렉토리가 잘 마운트 된것입니다.

 

exit한후에

docker-compose exec nginx bash 로 접속해 봅니다.

nginx -v 도 체크해 보고.

exit

800595458_1581114135.0232.png

 

docker-compose down 한후에

800595458_1581114225.1538.png

 

.env 파일을 수정해 봅니다.

그누보드 파일은 ./project/gnuboard5

데이타베이스 파일은 ./project/sqldata

 

APP_CODE_PATH_HOST=./project/gnuboard5

DATA_PATH_HOST=./project/sqldata

 

데이타 베이스는 mariadb로 변경할 예정인데,  phpmyadmin 이 mariadb를 볼수 있게 변경합니다.

PMA_DB_ENGINE=mariadb

 

mkdir project

cd project

git clone https://github.com/gnuboard/gnuboard5

mkdir gnuboard5/data

cd ..

mkdir sqldata

cd ..

 

nigix/sites/default.conf 파일이 laravel의 디폴트 public아래를 쳐다봄.

root /var/www/public;에서 public을 지움.

 

docker-compose up -d nginx mariadb phpmyadmin

docker-compose ps

 

800595458_1581114841.4005.png

phpmyadmin 은 localhost:8080

 

800595458_1581115752.2081.png

 

locahost로 접속해서

 

800595458_1581115865.7086.png

 

도커와 laradock도 시스템 관련 연관성이 거의 없습니다.  이미 사용하고 있는 포트만 겹치지 않은다면 어디서나 사용이 가능합니다. (외장하드에도 가능하지만, 호스트에 docker desktop은 설치해야 되고,  필요하면 hosts 파일은 수정해야 됩니다.)

 

 

 

 

 

 

 

 

추천
1

댓글 0개

전체 12 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT