- 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/에 두고 배포 시 주입한다.
30 lines
998 B
Desktop File
30 lines
998 B
Desktop File
# Gitea Actions runner (host 모드) — arko_renual 개발 배포 전용
|
|
# 설치 위치: /etc/systemd/system/arko-dev-runner.service
|
|
#
|
|
# host 모드이므로 도커 없이 서버에 설치된 JDK8/Maven을 직접 쓴다.
|
|
# (이 서버는 디스크 여유가 없어 러너용 도커 이미지를 받을 수 없다)
|
|
[Unit]
|
|
Description=Gitea Actions runner for arko_renual DEV (host mode)
|
|
After=network.target
|
|
Wants=network-online.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
WorkingDirectory=/opt/arko-dev/runner
|
|
ExecStart=/usr/local/bin/act_runner daemon --config /opt/arko-dev/runner/config.yaml
|
|
|
|
# 빌드 스텝에서 JDK8을 우선 쓰도록 PATH를 고정
|
|
Environment="JAVA_HOME=/opt/arko-dev/jdk8"
|
|
Environment="PATH=/opt/arko-dev/jdk8/bin:/usr/local/bin:/usr/bin:/bin"
|
|
|
|
# 배포 스크립트가 systemctl을 호출하므로 root로 구동한다
|
|
# (이 서버의 다른 서비스들도 모두 root 구동 방식이다)
|
|
User=root
|
|
Group=root
|
|
|
|
Restart=always
|
|
RestartSec=10
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|