Wildly 설정
1. Java OpenJDK 설치
$ sudo apt update
$ sudo apt install default-jdk
2. 사용자 생성
$ sudo groupadd -r wildfly
$ sudo useradd -r -g wildfly -d /opt/wildfly -s /sbin/nologin wildfly
3. WildFly 설치
$ wget https://download.jboss.org/wildfly/$WILDFLY_VERSION/wildfly-$WILDFLY_VERSION.tar.gz -P /tmp
$ sudo tar xf /tmp/wildfly-$WILDFLY_VERSION.tar.gz -C /opt/
- 심볼릭 링크 생성
$ sudo ln -s /opt/wildfly-$WILDFLY_VERSION /opt/wildfly

- WildFly 디렉토리에 대한 소유권을 사용자 및 wildfly 그룹으로 변경
$ sudo chown -RH wildfly: /opt/wildfly
4. Systemd 구성
- WildFly 구성 파일 저장 Directory 생성
$ sudo mkdir -p /etc/wildfly
- Wildfly config 파일 복사
config 파일 : Wildfly Mode & Bind 주소 지정 가능
| # The configuration you want to run WILDFLY_CONFIG=standalone.xml # The mode you want to run WILDFLY_MODE=standalone # The address to bind to WILDFLY_BIND=0.0.0.0 |
$ sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/
- Wildfly 설치 디렉토리 -> /opt/wildfly/bin 디렉토리 launch.sh 스크립트 복사
$ sudo cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/
- bin 디렉토리에 파일 실행 권한 부여
$ sudo sh -c 'chomd +x /opt/wildfly/bin/*.sh'
- Wildfly 설치 디렉토리 -> /opt/wildfly/bin 디렉토리 wildfly.service 복사
$ sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/
- Wildfly 설치 완료 후 daemon reload
$ sudo systemctl daemon-reload
5. Wildfly 서비스 제어
- Wildfly 서비스 시작
$ sudo systemctl start wildfly
- Wildfly 서비스 상태 확인
$ sudo systemctl status wildfly
| ● wildfly.service - The WildFly Application Server Loaded: loaded (/etc/systemd/system/wildfly.service; enabled; vendor preset: disabled) Active: active (running) since 목 2022-06-23 06:18:21 GMT; 2h 40min ago Main PID: 11142 (launch.sh) CGroup: /system.slice/wildfly.service ├─11142 /bin/bash /opt/wildfly/bin/launch.sh standalone standalone.xml 0.0.0.0 0.0.0.0 ├─11143 /bin/sh /opt/wildfly/bin/standalone.sh -c standalone.xml -b 0.0.0.0 -bmanagement 0.0.0.0 └─11206 java -D[Standalone] -server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.aw... 6월 23 06:18:21 instance-20220406-1151 systemd[1]: Started The WildFly Application Server. |
- 서버 부팅 시 Wildfly 자동 시작
$ sudo systemctl enable wildfly
6. 방화벽 Open
- 외부에서 Wildfly 인터페이스 엑세스를 위해 8080 포트 Open
$ sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp //8080포트 개방
$ sudo firewall-cmd --reload // 적용
7. Wildfly 설치 확인
- 브라우저에서 Domain or IP : 8080 입력

8. 관리 콘솔 설정
- 콘솔 관리자 계정 생성
$ cd /opt/wildfly/bin/
$ ./jboss-cli.sh --connect
| # Authenticating against security realm: ManagementRealm # Username: # Password: |
- 원격에서 콘솔 엑세스 설정
$ vi /etc/wildfly/wildfly.conf
| # The configuration you want to run WILDFLY_CONFIG=standalone.xml # The mode you want to run WILDFLY_MODE=standalone # The address to bind to WILDFLY_BIND=0.0.0.0 #추가 #The address console to bind to WILDFLY_CONSOLE_BIND=0.0.0.0 |
$ vi /opt/wildfly/bin/launch.sh
| #!/bin/bash if [ "x$WILDFLY_HOME" = "x" ]; then WILDFLY_HOME="/opt/wildfly" fi # 기존 #if [[ "$1" == "domain" ]]; then # $WILDFLY_HOME/bin/domain.sh -c $2 -b $3 #else # $WILDFLY_HOME/bin/standalone.sh -c $2 -b $3 #fi # 변경 if [[ "$1" == "domain" ]]; then $WILDFLY_HOME/bin/domain.sh -c $2 -b $3 -bmanagement $4 else $WILDFLY_HOME/bin/standalone.sh -c $2 -b $3 -bmanagement $4 fi |
- 서비스 재시작 하여 내용 적용
$ sudo systemctl restart wildfly
$ /etc/systemd/system/wildfly.service
| [Unit] Description=The WildFly Application Server After=syslog.target network.target Before=httpd.service [Service] Environment=LAUNCH_JBOSS_IN_BACKGROUND=1 EnvironmentFile=-/etc/wildfly/wildfly.conf User=wildfly LimitNOFILE=102642 PIDFile=/var/run/wildfly/wildfly.pid # 기존 #ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND #변경 ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BIND StandardOutput=null [Install] WantedBy=multi-user.target |
$ sudo mkdir /var/run/wildfly/
$ sudo chown wildfly: /var/run/wildfly/
$ sudo systemctl daemon-reload
$ sudo systemctl restart wildfly
- 브라우저에 IP or Domain : 9990/console/ 입력
- 관리 콘솔 계정으로 로그인 (로그인 암호 기억 체크)
