전체 글 (56) 썸네일형 리스트형 [TeamCity] 3. 초기 설정 서비스를 올리고 TeamCity에 접속하면 아래와 같은 초기화면이 뜬다. 1. Proceed 2. MySQL 설정 미리 MySQL을 설치하고 DB를 생성해뒀으므로 MySQL을 선택하고 proceed버튼을 선택한다. Download JDBC driver를 눌러준다. TeamCity에서만 사용할 MySQL DB이므로, 별 다른 유저 추가없이 root를 사용한다,,, 그리고 미리 생성해둔 teamcitydb를 입력해준다. 이렇게 초기 DB 설정이 끝났다. 그 후 라이센스 동의를 한 후 관리자 계정을 생성하는 창이 나온다. 관리자 계정을 생성하고 바로 로그인으로 리디렉션되는데, 이것으로 초기 설정을 마친다. [TeamCity] 2. MySQL 설치 TeamCity에서는 빌드 및 테스트에 관한 정보를 DB에 저장, 관리한다. 그렇기 때문에 TeamCity 내장 DBMS가 들어가있는데, 성능이 안좋다고 하니,,, MySQL을 설치해 연결해보자. 이번 포스팅에서는 MySQL 설치 및 DB 생성까지만 다룬다. # 설치 dnf install mysql-server # 서버 시작 systemctl start mysqld # 인스턴스 재기동시 mysqld 자동시작할 수 있도록 서비스 등록 systemctl enable mysqld # 초기 보안 설정 mysql_secure_installation Securing the MySQL server deployment. Connecting to MySQL using a blank password. VALIDATE PA.. [TeamCity] 1. TeamCity 시작 Oracle Cloud 프리티어 인스턴스에 얹었다가 서버가 뻗어버렸다,,, 로그인하는데만 한 세월이 걸려서 도저히 이건 쓸 수가 없구나 싶어 회사에서 과제용으로 제공받은 AWS ec2에 Teamcity를 올려 CI/CD 파이프라인을 만들어보기로 한다. AWS ec2 인스턴스 생성 과정은 생략한다. 추가로, 기존 Oracle Cloud에서 사용하려고 구매해둔 도메인을 여기에 연결하려고 한다. 1. ec2 인스턴스 생성 2. 방화벽 설정 ( 클라우드 방화벽 및 OS 방화벽 설정) - Oracle Cloud와 거의 동일하게 설정하면 된다. 다만 Oracle Cloud에서는 CentOS8을 사용하였고, AWS ec2에서는 RHEL 8을 사용했다. 3. 타임존 설정 - Oracle Cloud에서와 동일 4. op.. [Oracle Cloud] 11. 프리티어 DB 올해 개인 과제 겸 개인 사이드 프로젝트용으로 오라클 클라우드 개발 및 배포환경을 구성하면서 처음에 짰던 구상은 이랬더랬다,,, Oracle Cloud에서 무료로 제공하는 VM 인스턴스 2개를 각각 애플리케이션 서버와 CI/CD 및 DB 서버로 나누어 운영하고, 회사에서 제공받은 AWS 인스턴스에 무거운 로직을 수행해줄 API 서버를 올려 서비스를 구성하는 것. 그런데 Oracle Cloud 프리티어에서 VM 인스턴스외에도 제약이 있긴 하지만 Oracle DB 서버를 제공해준다고 한다. 대략적인 스펙은 CPU 1코어, 20GB이고 19c 버전의 DB를 사용할 수 있다고 한다. 다만 DB 접속을 1주일간 하지 않을시 자동으로 DB가 정지되고, 3개월간 정지상태이면 리소스를 회수해간다고 하니 이에대한 자동화.. [Oracle Cloud] 10. 무료 SSL 인증서 적용 도메인까지 구매해 연결을 완료했으니 SSL 인증서를 적용한다. Let's Encrypt를 이용해 진행한다. http와 https의 차이점은 추후에 자세히 포스팅하기로하고 일단은 적용부터 1. Certbot 설치 yum install epel-release yum install certbot yum install python3-certbot-nginx 설치 확인 certbot --version 2. nginx.conf 설정 vi /etc/nginx/nginx.conf server.server_name 에 도메인 입력 # nginx.conf test nginx -t # reload systemctl restart nginx.service 이전 방화벽 오픈 때 https 기본 포트인 443도 오픈 해두었기 때.. [Oracle Cloud] 9. 도메인 적용 매번 ip주소를 외워서 접속하기에도 번거롭고, 이후에 작지만 서비스를 하나 얹을 예정이라 도메인을 설정해야했다. 그래서 가비아에서 도메인을 하나 구매 1년에 7700원 (부가세 10% 포함)으로 저렴하게 프로모션중이라 바로 구매했다~ 먼저 오라클 클라우드 설정을 진행해보자. 메뉴 > 네트워킹 > DNS 관리 영역 관리 영역 생성 영역 이름 입력란에 도메인 입력 레코드 레코드 추가 레코드 추가 - 레코드 유형은 A - IPv4 주소로 선택 - 캡쳐에는 TTL이 30초로 나와있으나, 저러면 어느 기기에선 접속이 되고 어느 기기에선 접속이 안된다... 고생했다... 300초로 설정한다 - Address 설정해두었던 공인 IP주소 입력 변경 사항 게시 그 후 가비아에서 dns서버를 생성한 영역의 dns서버로 설.. [Oracle Cloud] 8. CentOS 8 타임존 설정 VM 인스턴스를 할당받은 후 시간설정을 따로 하지 않아 현재 시간과 다르게 출력되는 로그들,, 타임존을 설정하자. 1. 타임존 설정 ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime 잘 설정되었는지 확인 date 2. 시간 동기화 2.1. chrony 패키지 확인 rpm -qa | grep chrony 2.2. chrony.conf 설정 추가 echo -e "server time.bora.net iburst server send.mx.cdnetworks.com iburst " >> /etc/chrony.conf 2.3. 서비스 재시작 systemctl restart chronyd [Oracle Cloud] 7. CentOS 8 VM인스턴스 nginx reverse proxy 설치한 nginx를 리버스 프록시 서버로 셋팅한다. 위 그림에서의 Internet이 브라우저를 통해 서버에 접속하는 client일 것이고, example.com이 내 서버, VM 인스턴스 proxy가 nginx, Web server가 Spring boot 내장 톰캣 (WAS)가 될 것이다. 원하는 flow를 간단히 하면 이렇다. 1. 브라우저에서 http:// ${ 내 도메인 } 접속 요청 2. nginx에서 요청을 proxy-pass로 WAS로 넘김 3. Web server에 있는 자원을 client까지 response 1. conf 파일 설정 sudo vim /etc/nginx/nginx.conf nginx.conf 파일을 열어서 보면 중간에 80 port를 listen하는 server 정의 부분이 .. 이전 1 2 3 4 5 6 7 다음 목록 더보기