이전 학습에서 이미지 설정이 잘못되어서 전부 삭제 후 다시 설정
sudo docker ps -a
sudo docker stop 전부다
sudo docker rm 전부다
sudo docker pull oracleinanutshell/oracle-xe-11g (실제 설치할 버전)
sudo docker run --name oracle11 -d -p 11521:1521 oracleinanutshell/oracle-xe-11g
sudo docker ps -a
sudo docker start oracle11 도커실행
sudo docker stop oracle11 도커 정지
sudo docker ps -a 확인
sudo docker rm oracle11 도커 삭제(불필요 도커의 삭제)
scott 생성 및 테이블 추가
이후 sudo docker stop oracle11 되어도 scott 유지
jar 파일 서버 실행 테스트
java -jar [파일명]
위 과정이 6임
6. Oracle 11g xe 설치
sudo docker pull oracleinanutshell/oracle-xe-11g (실제 설치할 버전)
sudo docker images
sudo mkdir ora11
cd ora11
esc
:wq!
sudo docker run --name oracle11 -d -p 11521:1521 oracleinanutshell/oracle-xe-11g
sudo docker ps -a
sudo docker start oracle11 도커실행
sudo docker stop oracle11 도커 정지
sudo docker ps -a 확인
sudo docker rm oracle11 도커 삭제(불필요 도커의 삭제)
########################## sql deveploer명령
create user scott IDENTIFIED by tiger;
grant resource, connect to scott;
sudo update-alternatives --config java
javac <- 이 명령어로 path잘 설정되었는지 확인가능 (뭔가 명령어들 뜨면 됨)
sudo docker ps -a 확인
ubuntu폴더로 이동
cd ..
java -jar 프로젝트명.jar
지금은 aws 하나에 서버 돌리고 + db 서버도 포함하고 있는 상황이기 때문에 서버에서 db를 참조할 때는 탄력적ip뿐만 아니라 localhost를 사용할 수가 있다.
nginx는 80포트로 오는 요청을 서비스하고있는 서버의 포트번호(8090등)로 매핑해주는 역할
11. nginx
// root는 /로 참조 가능하고 nginx는 /etc/nginx에 있다.
sudo apt install nginx
server {
listen 80;
server_name 13.124.200.135;
location / {
proxy_pass http://13.124.200.135:8090;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
location /app/ {
proxy_pass http://13.124.200.135:8090/app/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
}
cd /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/sbb
ls
sudo rm default
ls
########## image 폴더 alias 부여 ####################
location /images/ {
alias /app/web/images/;
}
cd /etc/nginx/sites-enabled
서버의 재실행
/etc/nginx/sites-enabled$ sudo systemctl restart nginx
서버의 시작
/etc/nginx/sites-enabled$ sudo systemctl start nginx
서버의 종료
/etc/nginx/sites-enabled$ sudo systemctl stop nginx
설정파일의 오류 검사(서버 실행시 오류발생하는 경우 검사)
/etc/nginx/sites-enabled$ sudo nginx –t
80포트 추가후 인스턴스 재부팅
1. oracle11의 재가동
sudo docker ps -a
sudo docker start oracle11 도커실행
sudo docker ps -a 확인
2. nginx의 실행
cd /etc/nginx/sites-enabled
sudo systemctl start nginx
서버 종료
sudo systemctl stop nginx
3. jar 파일의 실행
home/ubuntu에서
cd /home/ubuntu
java –jar 파일명.jar
탄력적ip/app/list로 테스트http://13.124.200.135/app/list추가로 할 것
무료 DNS 찾아서 IP주소 연결
HTTPS 설치하는 것
// 압축해제 명령어
sudo tar xvfz apache-tomcat-9.0.87.tar.gz
sudo rm apache-tomcat-9.0.87.tar.gz
ls
//환경변수 설정을 위하여 해당 문서 쓸 수 있게 변경
sudo chmod -R 777 /etc/profile
sudo vi /etc/profile
환경변수 추가 부분 (맨 밑에서 엔터한번 치고 입력)(i로 입력모드, esc->:wq로 저장)
export CATALINA_HOME=/home/tomcat
source /etc/profile
echo $CATALINA_HOME
winscp에서 톰켓의 conf파일 server.xml을 수정 포트8080->8090(서비스하는 포트로)
서버가동
cd /home/tomcat/
cd apache-tomcat-9.0.87
sudo chmod -R 777 /home/tomcat/apache-tomcat-9.0.87/bin
cd bin
sudo ./startup.sh
sudo ./shutdown.sh
####################################
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context docBase="boot13_MVC3_jsp_mybatis-0.0.1-SNAPSHOT" path="/app" reloadable="true"/>
############################################
sudo ./startup.sh
cd /etc/nginx/sites-enabled
sudo systemctl start nginx
만약 jsp 처음 로딩시 시간 오래걸릴 수 있음
오류나면 인스턴스 껐다 키고
db실행, nginx , tomcat실행, 실행
끄기
sudo ./shutdown.sh
sudo systemctl stop nginx
sudo docker stop oracle11
톰켓 편의 설정을 위한 부분
...
...
tomcat/webapp/manage/meta-inf/수정
직접 주석처리
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
host-manager도 똑같이 수정
conf-> tomcat-users.xml
바로 위에 붙여넣기
admin, deployer라는 계정이 있음을 기억
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="admin"
roles="manager-gui,manager-script,manager-jmx,manager-status"/>
<user username="deployer" password="deployer" roles="manager-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui"/>
자원반납
대시보드의 모든 자원이 0이 되면 반납이 끝난거임
인스턴스 종료
키페어 삭제
탄력적ip : 연결해제 - 릴리즈
보안그룹 default 외 삭제
볼륨 삭제