- 00-server-setup.sh: JDK8(Temurin)·Tomcat9·systemd·nginx·act_runner 구축 (멱등)
- arko-dev-deploy.sh: WAR 검증→백업→ROOT 재전개→환경설정 주입→기동→헬스체크→실패 시 롤백
- build-and-upload.sh: 개발자 PC에서 JDK8 빌드 후 WAR 업로드 (서버 자원 보호)
- deploy-dev.yml: master push 시 자동 배포, 수동 재배포·롤백 지원
서버가 2코어/메모리 여유 1G에 40여 개 서비스가 동거하는 환경이라
Maven 빌드는 서버에서 돌리지 않고 개발자 PC에서 수행한다.
JSP가 리소스를 컨텍스트 경로 없이 하드코딩해 ROOT 전개만 가능하며,
globals-{dev,live}.properties는 .gitignore 대상이라 서버 config/에 두고 배포 시 주입한다.
34 lines
1.1 KiB
YAML
34 lines
1.1 KiB
YAML
# act_runner 설정 — /opt/arko-dev/runner/config.yaml
|
|
#
|
|
# 이 서버는 2코어 / 메모리 여유 약 1.3GB / 디스크 99% 사용 상태다.
|
|
# 러너가 서버를 흔들지 않도록 동시 실행 1개, 캐시 비활성으로 묶어둔다.
|
|
log:
|
|
level: info
|
|
|
|
runner:
|
|
file: .runner
|
|
# 동시 작업 1개 — 2코어 서버에서 Maven 빌드가 겹치면 서버 전체가 응답 불능이 된다
|
|
capacity: 1
|
|
timeout: 40m
|
|
# 스텝에서 쓰는 환경변수 파일 (필요 시 DB 비밀번호 등을 여기 두지 말고 서버 config/에 둘 것)
|
|
envs_file: ""
|
|
fetch_timeout: 5s
|
|
fetch_interval: 10s
|
|
labels:
|
|
# host 모드 = 도커 없이 서버에 설치된 JDK8/Maven 직접 사용
|
|
- "arko-dev:host"
|
|
|
|
cache:
|
|
# 캐시 서버는 디스크를 계속 먹으므로 끈다
|
|
enabled: false
|
|
|
|
container:
|
|
# host 모드만 쓰므로 컨테이너 설정은 사용하지 않음
|
|
network: ""
|
|
privileged: false
|
|
docker_host: "-"
|
|
|
|
host:
|
|
# 작업 디렉토리 — 저장소 체크아웃(약 230MB)이 여기 놓인다
|
|
workdir_parent: /opt/arko-dev/runner/work
|