이 문서는 mago3D를 Docker Compose를 이용하여 설치하는 방법을 안내합니다.
- Docker가 설치된 환경
- localhost 인증서가 설치된 환경
- git이 설치된 환경 (https://github.com/git-guides/install-git)
Docker 데몬을 실행합니다.
Windows의 경우, Docker Desktop을 실행합니다.
Mac의 경우, Docker Desktop을 실행합니다.
Linux의 경우, Docker 서비스를 실행합니다.
mkcert를 사용하여 localhost 인증서를 생성합니다.
-
winget(Windows)
PS 터미널을 관리자 권한으로 실행하여 아래 명령을 실행한다.winget install mkcert
-
brew(macOS)
brew install mkcert
-
local CA 설치
mkcert -install
-
인증서 생성
cd install/infra/trafik/certs mkcert -cert-file default.crt -key-file default.key localhost dev.localhost *.localhost 127.0.0.1 ::1
먼저, 배포된 Docker 이미지 파일을 install 경로에 복사합니다. 아래의 스크립트를 실행하여 관련된 Docker 이미지를 로드합니다.
cd install
./load_docker_images.sh
혹시 실행 권한이 없다면 다음 구문을 실행
chmod +x load_docker_images.sh
./load_docker_images.sh
아래의 명령어를 실행하여 Docker Network를 생성합니다.
docker network create mago3d
배포된 terrain 폴더를 install/infra/terrain-data 경로에 복사합니다.
cd install/infra
./compose.sh up -d
혹시 실행 권한이 없다면 다음 구문을 실행
chmod +x *.sh
./compose.sh up -d
종료를 원하면 다음과 같은 명령어를 실행합니다.
./compose.sh down
-
계정: admin/keycloak
-
mago3d realm 생성
install/infra/auth-data/realm-export.json
파일을 이용하여 realm을 생성합니다.master Select Box -> Create Realm -> upload realm-export.json -> create
-
mago3d client 생성
install/infra/auth-data/mago3d-api.json
,install/infra/auth-data/mago3d-front.json
파일을 이용하여 client를 생성합니다.Select Box -> mago3d -> Clients -> Import client -> Upload mago3d-api.json -> Save Select Box -> mago3d -> Clients -> Import client -> Upload mago3d-front.json -> Save
-
service account role 추가
Select Box -> mago3d -> Clients -> mago3d-api -> Service account roles -> Assign role -> Filter by clients -> select (realm-management) manage-users, (account) manage-account -> Assign
-
mago3d user 생성
Select Box -> mago3d -> Users -> Add user Username: admin First Name: admin -> Create
-
mago3d user password 설정
Select Box -> mago3d -> Users -> admin -> Credentials -> Set password New password: admin Temporary: OFF -> Save password
-
mago3d user role 추가
Select Box -> mago3d -> Users -> admin -> Role mapping Assign role -> select admin -> Assign
- https://dev.localhost/configrepo/
- 계정: git/git
- config 저장소 추가
- install/infra/config-data/ 하위에 있는 파일 업로드 및 커밋
cd install/infra/config-data
git init
git checkout -b main
git add .
git commit -m "first commit"
git remote add origin https://dev.localhost/configrepo/git/config.git
git push -u origin main
- 각자 환경에 맞도록 설정 파일을 수정하고 커밋
- https://dev.localhost/geoserver/
- 계정: admin/geoserver
- Workspace 생성
Workspace -> Add new workspace -> Workspace Name: mago3d Namespace URI: https://dev.localhost/geoserver/web/mago3d check Default Workspace -> Save
- Store 생성
Stores -> Add new Store -> Store Type: PostGIS -> Workspace: mago3d Data Store Name: postgis Connection Parameters: host: postgresql port: 5432 database: postgres schema: geoserver user: postgres passwd: postgres -> Save
- https://dev.localhost/grafana/
- 계정: admin/admin
- Datasource 추가
Configuration -> Data Sources -> Add data source -> Prometheus -> Select Name: Prometheus URL: http://prometheus:9090 -> Save & Test
- Dashboard 추가
install/infra/dashboard/jvm-micrometer.json
파일을 이용하여 dashboard를 추가합니다.+ -> Import -> Upload JSON File -> jvm-micrometer.json -> Import
cd install/apps
./compose.sh up -d
혹시 실행 권한이 없다면 다음 구문을 실행
chmod +x *.sh
./compose.sh up -d
종료를 원하면 다음과 같은 명령어를 실행합니다.
./compose.sh down
cd install/front
./compose.sh up -d
혹시 실행 권한이 없다면 다음 구문을 실행
chmod +x *.sh
./compose.sh up -d
종료를 원하면 다음과 같은 명령어를 실행합니다.
./compose.sh down
- https://dev.localhost/user
- 계정: admin/admin
- 로그인 후, 사용자 페이지 접속
- https://dev.localhost/admin
- 계정: admin/admin
- 로그인 후, 관리자 페이지 접속