DevOps

DevOps

workbench RDS 접속 오류 해결

원래 하던대로 workbench에서 RDS 접속 시도를 했는데 보안 그룹 설정과 퍼블릭 액세스 허용을 해줬음에도 연결이 계속 거부당했다. 구글링 하던중.. https://aeliketodo.tistory.com/96 [SPRING] AWS RDS Connection timed out, unable to connect to localhost 연결 오류 해결 방법 문제 상황 DB 연결 문제로 3일을 꼬박 삽질만 했다 ㅎ.ㅎ AWS RDS 데이터베이스를 EC2가 아니라 외부 IP의 MySQL Workbench와 스프링 부트 프로젝트에 연결하고 싶었다. 그러나 Workbench에서는 unable to connect aeliketodo.tistory.com 이 글을 발견했고, 3번째 방법으로 해결했다. VPC 서..

DevOps/Docker

docker 명령어 - compose, image, push, pull, login

docker-compose.yml으로 빌드 (image 변경) docker-compose up docker-compose up -d --force-recreate --build 안쓰는 docker image, container 전체 삭제 docker system prune docker image 이름, 태그 변경 docker image tag [변경할 이미지] [바꿀 이름, 태그] docker push docker push [docker hub에 올릴 이미지 이름] 그 외 로그인, pull docker login docker pull [이미지 이름] pull 할 이미지는 public이거나 private일 경우 권한을 가지고 있어야 접근 가능(login)하다.

DevOps

포스트맨 workspace 삭제

진행하던 프로젝트에서 팀원이 갑작스럽게 나갔는데 포스트맨 워크스페이스를 삭제하고 나갔다... 업그레이드 버전을 썼더라면 이런일이 없었을텐데... 워크스페이스를 삭제하면 복구가 불가능하다고 한다. 이렇게 삭제할 수 있다. 삭제하면 복구가 안되니 주의할 것!

DevOps/Docker

Redis를 Docker로 띄우기 + Docker Compose up으로 띄우기

백엔드 개발을 할 때는 redis만 도커로 띄워놓고 사용했는데, 기능 개발이 끝난 후 프론트에서 작업할 때에는 프론트+백엔드 도커에 +redis까지 띄워줘야 된다는 사실을 깨닫고 부랴부랴 만들었다. Redis 컨테이너 하나만 사용 redis 이미지로 docker 컨테이너 만들기 docker pull redis //이미지 받아오기 docker images //받아온 이미지 확인 docker run --name [name] -d -p 6379:6379 redis //실행 docker ps -a //컨테이너 확인 redis client 접속하기 docker exec -it [name] /bin/bash redis-cli redis key, value 확인 명령 keys * get [key] set [key] ..

DevOps/Docker

Docker 설정 - wsl 설치

Docker를 처음 사용하는데 무한 starting이 걸렸다. 찾아보니 가상 머신 환경이 되어있지 않아서 생기는 오류인 것 같다. windows에서 Docker를 사용하기 위해 찾아보니 Hyper-V를 사용하라는 글이 많아 사용하고자 했으나 똑같이 했는데도 계속 설치조차 안됐다. 그 이유는 바로바로~ Hyper-V는 Windows 10 pro에만 지원이 되고 내 windows는 Home 버전이어서 wsl을 사용해야 했다.. 하지만 wsl 설치 명령어를 알아듣지 못했고.. 엄청난 구글링 끝에 윈도우 최신버전만이 wsl을 사용할 수 있다는 정보를 얻었다.. 내 윈도우는 vitual box와의 충돌? 때문에 20년도 7월부터 업데이트가 안 되어 있었던 상태였고, box를 삭제하고 업데이트를 해줬다. (업데이트..

DevOps

[travis] deploy 관련 yml

프로젝트 구조가 git repo -> project (gradle 위치) 이어서 yml 파일은 최상단에 위치하고 gradle은 내부 폴더에 위치하는 상황이어서 deploy를 할 때 현재 위치를 지정하는 일이 중요했다. before_deploy: - cd ../ - mkdir -p before-deploy - cp appspec.yml before-deploy/ - cd project - cp scripts/*.sh ../before-deploy/ - cp build/libs/*.jar ../before-deploy/ - cd ../ - cd before-deploy && zip -r before-deploy * - cd ../ && mkdir -p deploy - mv before-deploy/befor..

DevOps

[EC2] deploy.sh - 8080 사용중 오류

분명 deploy.sh에서 구동 중인 애플리케이션이 있을 경우 kill하도록 했는데 감지하지 못하는 현상이 나타났다. 8080 포트 사용 여부 확인하는 코드 netstat -ntlp | grep :8080 확인해 보니 8080 포트는 사용중이어서(구동 중인 애플리케이션이 있어서) 8080 사용중인 오류가 뜨는 것이었다. kill -15 pid로 kill한 후 deploy.sh를 실행하니 잘 실행되어 구동 중인 애플리케이션을 감지하지 못해서 생기는 오류일 것이라고 생각했다. 원래 deploy.sh 코드 #!/bin/bash REPOSITORY=/home/ec2-user/app/step2 PROJECT_NAME=name echo "> Build 파일 복사" cp $REPOSITORY/zip/*.jar $RE..

DevOps

travis, ec2 DB

travis는 git에 저장된 파일로 gradle을 실행하는데 이때 RDS.properties는 보안상의 문제로 ec2 서버와 로컬에만 저장해둬서 jdbc 연결 설정이 안되는 오류가 났다. 이를 해결하기 위해 travis는 h2 DB를 사용하게 했고, application-h2.properties를 만들어 기본 properties와 분리해줬다. ec2에서 build하는 deploy.sh에서는 기본 properties와 RDS properties만을 사용하도록 해서 성공했다.

hahihi
'DevOps' 카테고리의 글 목록