-
WildFly 설치 및 시작WAS/WildFly 2025. 6. 30. 19:55

WildFly는 Jakarta EE 및 MicroProfile 표준을 지원하는 모듈형 구조의 고성능 오픈소스 애플리케이션 서버
유연한 확장성과 빠른 부팅 속도를 제공합니다.
Red Hat이 주도하며, 클라우드 네이티브 환경과 대규모 엔터프라이즈 시스템 모두에 적합한 미들웨어 플랫폼
📥 공식 사이트에서 다운로드
- WildFly Downloads에서 최신 ZIP 파일을 받습니다.
- 적절한 위치에 압축 해제 후 환경 변수 설정
#============================================================= # COMMON ENV @KIOR #============================================================= umask 077 EDITOR=vi export EDITOR set -o vi export PS1="[\$LOGNAME@`hostname`:\$PWD]$ " export JAVA_HOME=/sw/java export PATH=$JAVA_HOME/bin:$PATH #============================================================= # WildFly ENV @KIOR #============================================================= export JBOSS_HOME=/sw/wildfly export WILDFLY_LOG_HOME=${JBOSS_HOME}/logs export PATH="${PATH}:${JBOSS_HOME}/bin" #============================================================= # WILDFLY Alias @KIOR #============================================================= alias whome='cd ${JBOSS_HOME}' alias wcfg='cd ${JBOSS_HOME}/standalone/configuration' #alias wcfg='cd ${JBOSS_HOME}/domain/configuration' alias wbin='cd ${JBOSS_HOME}/bin' alias wlog='cd ${WILDFLY_LOG_HOME}' alias pp='ps -ef | grep ' alias vi='vim'# Linux 환경에서 바로 설치파일 Donwload curl -L -O https://github.com/wildfly/wildfly/releases/download/34.0.1.Final/wildfly-34.0.1.Final.tar.gz⚙️ WildFly 환경변수
WildFly 부트 스트랩 스크립트(
standalone.sh/domain.sh)가 인식하는 대표 환경 변수를 정리 😊
필요한 항목만 설정하고 나머지는 스크립트 옵션(-c,-b,--debug)으로 조정하는 것을 권장합니다.변수명 용도 / 효과 주 사용 상황 JBOSS_HOME
(또는WILDFLY_HOME)WildFly 설치 경로 지정
미설정 시 스크립트가 자동 추론설치 디렉터리 이동·심볼릭링크로 실행 JAVA_HOME
(또는JAVA)실행할 JDK 지정 여러 JDK 버전이 공존할 때 (JDK 17 권장) JAVA_OPTSJVM 옵션 덮어쓰기 -Xmx2g, GC 옵션, 시스템 프로퍼티 설정JAVA_OPTS_PREPENDJAVA_OPTS_APPEND내장 옵션 앞/뒤로 붙이기 충돌 없이 특정 옵션만 추가 JBOSS_MODULEPATH추가 모듈 경로 커스텀 모듈 테스트·패치 JBOSS_SERVER_CONFIG기본 standalone.xml대신 사용할 설정 파일서비스 유닛에서 standalone-full-ha.xml고정JBOSS_BIND_ADDR*
(_MANAGEMENT,_PRIVATE)IP 바인딩 일괄 지정 컨테이너·다중 NIC 환경 LAUNCH_JBOSS_IN_BACKGROUND콘솔 점유 없이 백그라운드 실행(UNIX) 간단 데몬화 JBOSS_PIDFILEPID 파일 경로 지정 init 스크립트 / 헬스 체크 JBOSS_CONSOLE_LOGJBOSS_LOG_DIR콘솔 로그 파일·로그 디렉터리 Filebeat 등 로그 수집 JBOSS_BOOT_LOGGER_LEVEL부팅 로깅 레벨(예: DEBUG)트러블슈팅 JPDA=true8787 포트 원격 디버깅 열기 IDE 연동 디버 Java SE 버전 지원되는 WildFly 버전
(표준 배포판 기준)
비고 8 (LTS 2015) WildFly 10 → 26.1.x
(최종 지원 = 26.1.2.Final)26.1 릴리스까지 SE 8/11/17 모두 인증 완료 (26.1 Release Notes)
WildFly 27부터 SE 8 지원 중단11 (LTS 2018) WildFly 23 → 34.x WildFly 34 표준판은 11·17·21 모두 호환
WildFly 35부터 SE 11 지원 중단 (공식 블로그 발표)17 (LTS 2021) WildFly 26.1 이상
(35+ 최소 요구 버전)26.1에서 초기 공식 인증 후 지속 지원 (26.1 Release Notes)
WildFly 35 이후는 SE 17 또는 21 운영 권장 (블로그 안내)21 (LTS 2023) WildFly 31 (Core Profile) (인증 진행 중)
🖥️ 서버 실행 방법
✅ Standalone 모드
단일 인스턴스로 실행하는 기본 모드입니다.
${JBOSS_HOME}/bin/standalone.sh -b 0.0.0.0 -bmanagement 0.0.0.0✅ Domain 모드
여러 서버를 Domain Controller에서 통합 관리하는 모드입니다.
${JBOSS_HOME}/bin/domain.sh -b 0.0.0.0 -bmanagement 0.0.0.0
※ 설정 파일을 바꾸고 싶다면 아래처럼 실행하세요.
$ ./standalone.sh -c standalone-full-ha.xml🚨 주의 🚨
# WildFly36.0.0.1 # Java 11.0.0.2 Caused by: java.lang.UnsupportedClassVersionError: Failed to link org/jboss/as/clustering/infinispan/subsystem/InfinispanExtension (Module "org.jboss.as.clustering.infinispan" version 36.0.1.Final from local module loader @6e1d8f9e (finder: local module finder @3e34ace1 (roots: /sw/wildfly/modules,/sw/wildfly/modules/system/layers/base))): org/jboss/as/clustering/infinispan/subsystem/InfinispanExtension has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0JVM이 클래스 파일을 읽다 버전이 높아 예외(UnsupportedClassVersionError)를 던지고, 모듈 로딩이 실패하여 부팅이 중단됨.
- 55 → Java 11
- 61 → Java 17
- 65 → Java 21
🔐 관리 콘솔 접속
초기에는 관리용 사용자 계정이 없으므로 아래 명령어로 생성해야 합니다.
$ $JBOSS_HOME/bin/add-user.sh- 유형 선택 시
a→ Management User - 사용자 이름과 비밀번호 입력
이후 http://localhost:9990 으로 접속하면 관리 콘솔에 로그인할 수 있습니다.


⌨️ CLI 접속
CLI(Command Line Interface)를 통해 WildFly를 명령어 기반으로 제어할 수 있습니다.
$JBOSS_HOME/bin/jboss-cli.sh --connect📌 주요 명령 예시
[standalone@localhost:9990 /] version [standalone@localhost:9990 /] deployment list [standalone@localhost:9990 /] shutdown자동화를 위해
--file=myscript.cli옵션을 통해 CLI 스크립트를 실행할 수도 있습니다.⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⢰⣶⠀⠀⢠⣶⡖⠀⢀⣠⣴⣶⣶⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣶⣦⣄⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⢸⣿⠀⣰⣿⠋⠀⢠⣾⡟⠉⠀⠈⢻⣿⡄⠀⠀⠀⠀⠀⠀⣰⣿⠏⠁⠀⠙⢿⣷⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⢸⣿⣼⣿⠁⠀⠀⢸⣿⠀⠀⠀⠀⠀⣿⡇⠀⠀⠀⠀⠀⠀⣿⣿⠀⠀⠀⠀⢸⣿⡇⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⢸⣿⠈⢻⣷⡄⠀⠸⣿⣆⠀⠀⠀⢠⣿⡇⠀⠀⠀⠀⠀⠀⢿⣿⡀⠀⠀⠀⣸⣿⠃⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⢸⣿⠀⠀⠹⣿⣆⠀⠙⢿⣷⣶⣾⡿⠋⠀⠀⠀⠀⠀⠀⠀⠈⠻⢿⣶⣶⣾⠿⠃⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣤⣤⣤⣤⡄⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ bash-5.1# su - wildfly Last login: Mon Jun 30 10:45:46 UTC 2025 on pts/2 [wildfly@wildfly:/home/wildfly]$ jboss-cli.sh --connect [domain@localhost:9990 /] version JBoss Admin Command-line Interface JBOSS_HOME: /sw/wildfly Release: 26.0.1.Final Product: WildFly 34.0.1.Final JAVA_HOME: /sw/java java.version: 11.0.0.2 java.vm.vendor: Oracle Corporation java.vm.version: 11.0.0.2+2-2 os.name: Linux os.version: 6.10.14-linuxkit [domain@localhost:9990 /] deployment list
📝 마무리
이제 WildFly를 직접 설치하고 실행할 수 있게 되었습니다!

WildFly는 쉬운듯 어려운 미들웨어 인거 같습니다.
넓은 확장성을 제공하지만 이에 따른 이용자의 이해도가 뒷받침이 되야 합니다.
'WAS > WildFly' 카테고리의 다른 글
WildFly Session Clustering on Kubernetes (8) 2025.07.07 WildFly 기본 개념 이해 (4) 2025.06.30