다시 사이드프로젝트로 돌아왔다.
정신을 차리고 가장 먼저 해야할 일은 같이 작업하시는 프론트개발자분이 API요청을 직접 해보고 싶은데, 테스트할 수 있는 환경을 부탁해서였다.
물론, API명세서가 없는 건 아니였지만 실제로 테스트해보고 싶다는 부탁에 어떻게 구축해드릴까 고민했었다.
이야기하면서 나온 다양한 방법들
1. 내 컴퓨터를 서버로 하여금 열어주는 것
2. Spring swagger사용
3. 클라우드에 띄워놓기
절충안
이였다! 그리하여 시작된 Docker로 감싸서 EC2에 배포하기, 개발환경은 다음과 같다.
위와 같은 순서로 해야함을 인지 했으면 바로 적용하러~ ㄱㄱ
build/libs/
경로에 jar파일이 생성이 됐는지 확인해주자!(이걸로 이미지를 만들것이다.)# jdk17 Image Start
FROM openjdk:17
ARG JAR_FILE=build/libs/*.jar
# jar 파일 복제
COPY ${JAR_FILE} app.jar
# 실행 명령어
ENTRYPOINT ["java","-jar","/app.jar"]
$ docker --version
zsh: command not found: docker
에러 출력 되면 zshell에서 docker를 찾을 수 없는 것!export PATH="docker 파일경로"
/Users/sinchangho/.docker
$ docker login -u gloomshin
$ docker image ls , docker images
$ docker ps -a
$ docker build -t {name}/{image}
$ docker build -t gloomshin/test-docker-image [dockerfile위치]
- 애플칩에서 build할 경우, linux/arm64/v8 이미지로 생성됨.
--platform linux/amd64
을 추가해서 빌드해야 EC2 운영체제와 호환이 가능$ docker build --platform linux/amd64 -t {name}/{image}:{tag} [dockerfile위치]
docker push [이미지 repository명]
이렇게 하면 로컬에서 할 작업은 끝마치게된다. 다음에는 클라우드(AWS)에서 구축해야할 작업에 대해 알아보고 기록해두록 하자!