STS4에 서버 연결
콘솔 >
짜잔~
[프리라우팅]
서버 다시키면 프리라우팅 다풀림 원래 쉘스크립트로 만들어서 사용..
iptables -t nat -A PREROUTING -p tcp --dport 53306 -REDIRECT --to-port 3306
iptables -t nat -A PREROUTING -p tcp --dport 81 -REDIRECT --to-port 10080
[테스트용 쉘스크립트 만들어보기 "test" 출력]
cd /
vi ip.sh
#!/bin/bash
echo "test"
./ip.sh
ls -al ip.sh
chmod +x ip.sh
실행권한을 줘야 실행 가능
ls -al ip.sh
./ip.sh
[쉘스크립트로 프리라우팅]
vi ip.sh
기존 파일 수정
#!/bin/bash
iptables -t nat -A PREROUTING -p tcp --dport 53306 -REDIRECT --to-port 3306
iptables -t nat -A PREROUTING -p tcp --dport 81 -REDIRECT --to-port 10080
첫째줄없으면 작동 안함
이렇게 만들어서
./ip.sh
이거로 실행
[쉘스크립트로 도커실행]
이런거 처럼 도커실행 이런거 다 가능 쉘로 거의다 만든다
vi docker.sh
#!/bin/bash
systemctl start docker
docker start mysql8
docker start oracle_18c
docker ps
chmod +x docker.sh
실행권한 추가
./docker.sh
쉘스크립트 실행
이렇게 만들어서 작동되게 만들어두면
루트로 ./*.sh로 실행시키면 됨
[쉘 ?]
Linux (Shell)
1. bash-3.1# => shell 모드
2. shell script => .sh => vi 편집기로 생성
첫번째 라인 : #!/bin/bash 필수
두번째 라인부터 리눅스 명령어 입력
ex)
mysql dump -u koo -p koo1004 mrp > mrp.sql
이렇게 비번까지 넣어서 비번안물어보게해서 쉘로 디비 백업도 가능
3. chmod +x test.sh => owner, group, guest 모두 실행권한 부여
왜 최상위 디렉토리에 만드냐? => 일반사용자가 실행 못하게 하기위함
[vscode에서 copilot사용하여 html만들기]
프론트 : 영화 예약 페이지 만들기
영화관 예약하는 경우에 좌석을 선택했는데 다른사람이 선택한 경우에 바로 실시간으로 반영되어야함
이걸 기업프로젝트에서 요구함
소켓방식과 api방식이 존재
api방식을 하려면 스크립트를 잘 해야함 ajax
반응형으로 잘 움직일수있게 백엔드랑 쿵짝쿵짝
파일 > 폴더 열기 > 프로젝트의 webapp 디렉토리 열기
여기서 할고얌
코파일럿 사용
이놈이 알아서 다짜준다
css파일 분리
네임(DTO에 맞게), 액션(잘연결되게) 주의하기
이렇게 다해주니까 백 연습할때 vs코드로 프론트 만들어서 뚝스딱스 해보기
[배포용 테스트 프로젝트 생성]
영화 예매 테스트페이지를 만들고 나서 예매했을때 저장되는 시간이 지금 시간이랑 다름!!
why?
서버시간, 디비시간 설정을 안해서
서버시간 확인
date
이거도 다르긴하지만 디비에 저장된 시간이랑 다르다
디비시간 확인
docker exec -it mysql8 /bin/bash
mysql -u webapi -p
select now();
select now(), @@system_time_zone as timezone;
디비 깔린 사용자 홈디렉토리에서
vi my.cnf
[mysqld]
default-time-zone="+9:00"
추가하기
docker cp mysql8:/etc/my.cnf /home/cms/my.cnf
docker stop mysql8
docker start mysql8
[프로젝트 war파일 생성]
프로젝트 우클릭 > 익스포트
저장 경로잡고 오버라이트 체크하기 > 수정한파일만 오버라이트
오버라이트 없이 하기
[파일질라와 서버 연결]
전송설정 능동형으로 연결
파일질라로 접속
/home/cms(tomcat사용자)/tomcat/webapps
기존에 올라와있던 ROOT.war은 ROOT2.war로 변경해두고
여기에 war파일을 ROOT.war로 이름변경해서 올림
[WEB, WAS 시작 종료 주의점]
중요한점
WEB => httpd, WAS => tomcat
[시작]
1. httpd
2. tomcat
[종료]
1. tomcat
2. httpd
httpd는 루트가 실행
tomcat은 cms가 실행
cd /home/cms(사용자)/tomcat/bin
./startup.sh
[war파일 지울때]
서버에 쓰레기 지울때 빨리 지우는법
ftp접속해서 지우는거보다 서버에서 직접지우는게 빠르고 확실함
cd /home/cms/tomcat/webapps
rm -drf ROOT
[배포시 주의사항]
어플리케이션프로퍼티스 : 포트 8080으로 다시 변경 (서버의 WAS 포트로)
dbinfo : dburl 주석달고 복붙 아이피부분을 localhost로 변경
프로젝트 우클릭 프로퍼티스 수정 위 두가지
왼쪽 사진의 것은 꼭 체크해야 html파일들이 잘 올라감
어플리케이션 프로퍼티스 포트 8080설정
프로젝트 우클릭 > 그래들 > 새로고침 > 에러 발생 > 다이나믹웹모듈 다시 버전 5로 바꾸기
다시 워파일 익스포트