본문 바로가기
728x90

Programming/개발 공부17

[Docker] Docker 네트워크 docker host : 도커가 띄운 컨테이너들을 관리하는 곳하나의 docker host에는 여러 개의 컨테이너가 만들어 질 수 있다.  port fowarding컨테이너 내부에서 실행 중인 서비스에 호스트 시스템(또는 외부 네트워크)이 접근할 수 있도록 포트를 연결하는 기능 - Docker 컨테이너 실행 시Docker Desktop 이용 cmd 이용docker run -d -p [호스트 포트]:[컨테이너 포트] [이미지 이름] 특정 이름의 컨테이너 사용하려면 --name 추가 localhost:8080/index.html 로 들어가면 서버가 켜진 걸 확인 할 수 있다.  index.html 파일 수정cmd이용docker exec -it [컨테이너 이름] /bin/bash /usr/local/apache.. 2025. 1. 15.
[Docker] Docker hub image pull 받기, Doker Desktop 실행, cmd 실행 https://hub.docker.com/_/httpd httpd - Official Image | Docker HubQuick reference Supported tags and respective Dockerfile links 2.4.62, 2.4, 2, latest, 2.4.62-bookworm, 2.4-bookworm, 2-bookworm, bookworm⁠2.4.62-alpine, 2.4-alpine, 2-alpine, alpine, 2.4.62-alpine3.21, 2.4-alpine3.21, 2-alpine3.21, alpine3.21⁠ Quick rhub.docker.com 아파치 웹 서버 pulldocker pull httpd httpd 이미지가 잘 생성.  컨테이너 run Dokcer .. 2025. 1. 14.
[Docker] Docker image 만들기, push 하기 Repository만들기Dockerhub에서 리포지토리를 만들어준다.Dockerhub - Create a Repository 리포지토리 이름을 적고 create를 해 만들어 준다. Dockerfile# 베이스 이미지 선택 (OpenJDK 17)FROM openjdk:17-jdk-alpine# 작업 디렉토리 설정WORKDIR /app# JAR 파일 복사COPY target/myapp.jar /app/myapp.jar# 포트 노출EXPOSE 8080# 컨테이너 실행 시 실행될 명령어CMD ["java", "-jar", "myapp.jar"]다음과 같은 Dockerfile을 프로젝트 내에 만들어준다. Docker Image 만들기프로젝트를 열고 터미널 창에서 다음 명령어를 실행해 이미지를 생성한다.docker.. 2024. 9. 5.
[AWS] ECS에 EC2연결하기, EC2 인스턴스에서 ECS Cluster 연결 설정하기 ECS Cluster생성 클러스터 생성 클릭  클러스터 이름 입력, 인프라는 모두 선택 해제해 주었다.  클러스터 생성완료  EC2 인스턴스에서 ECS Cluster 연결 설정EC2는 앞서 만들어 두었던 EC2인스턴스를 사용하였다. 1) ECS agent 설치~$ curl -O https://s3.us-west-2.amazonaws.com/amazon-ecs-agent-us-west-2/amazon-ecs-init-latest.amd64.deb~$ sudo dpkg -i amazon-ecs-init-latest.amd64.deb 2) 설정 파일 수정파일을 편집 /lib/systemd/system/ecs.service하고 섹션의 끝에 다음 줄을 추가 [Unit].sudo nano /lib/systemd/s.. 2024. 8. 29.
[AWS] 스프링 부트 프로젝트 배포 및 실행 파일질라 - 사이트 관리자를 클릭해준다. 새 사이트를 만들어주고 프로토콜은 SFTP, 호스트는 인스턴스 퍼블릭 IP주소로그온 유형은 키파일을 선택하고 키파일은 인스턴스 만들 때 저장했던 키파일을 불러오면 된다.그리고 사용자까지 입력해 준 뒤 연결해준다.사용자는 ip앞에 있는 이름으로 인스턴스 연결 때 설정한 사용자 이름이다.  프로젝트의 jar파일을 넣어준다. 참고)메이븐 프로젝트에서 package를 누르면 jar파일이 생성된다.   인스턴스에 연결해 해당 jar파일을 실행해주면 프로젝트가 실행된다.java -jar ROOT.jar 2024. 8. 28.
[AWS] EC2 사용하기 서비스 - EC2로 들어가준다.   인스턴스 이름을 적어주고 Ubuntu - Ubutu Server 24.04 LTS 선택 해준다.인스턴스 개수는 1개로 해준다.  인스턴스 유형은 t2.micro, 네트워크 설정은 기본 값, 스토지 구성으 1x8 GiB gp3로 하였다.  키페어가 없다면 새 키페어 생성을 해주면 파일이 다운로드 된다.이 키페어는 노출되서는 안되고 인스턴스를 접속할 때 필요하니 잘 관리해주어야한다. 인스턴스 시작을 눌러 인스턴스를 생성한다.  인스턴스가 잘 생성되었다.  인스턴스를 접속하기 위해 연결해준다.  연결을 눌러주면 EC2인스턴스를 원격으로 제어 할 수 있는 Shell이 뜬다.  웹이 아닌 컴퓨터에서 제어하려면 SSH클라이언트를 이용하면 된다. EC2인스턴스에 웹서버를 깔아 누구.. 2024. 8. 27.
[AWS] AWS 계정 생성 및 설정 https://signin.aws.amazon.com/signup?request_type=register AWS Console - SignupExplore Free Tier products with a new AWS account. To learn more, visit aws.amazon.com/free.signin.aws.amazon.com AWS 홈페이지에 들어가 계정 생성 해줍니다.프리티어는 적은 사용량을 가진 사용자에게 12개월 무료로 혜택을 제공하는 서비스입니다.프리 티어를 사용해 실습을 할것입니다.  1. AWS 계정 만들기이메일 인증 -> 기본 정보 입력(주소는 영문으로) -> 카드 정보 입력 -> 핸드폰 번호 인증 AWS서비스를 이용하기 위해서는 카드 정보를 입력해야합니다.(AWS과금에 대.. 2024. 8. 23.
[MSA] Multi-Module과 Mini-Service Architecture Multi-Module특징하나의 대형 프로젝트를 여러 개의 모듈로 나누어 관리하는 방식장점개발 효율성 증가 : 코드의 재사용성을 높이고, 프로젝트의 관리를 용이팀간의 협업이 용이 : 각 팀이 독립적으로 모듈을 개발하고 관리하기 때문에 효율적인 협업 가능유지보수 용이 : 각 모듈을 독립적으로 관리함으로써 특정 모듈의 변경이나 업데이트가 전체 프로젝트에 미치는 영향을 최소화단점모듈 간 의존성 관리가 복잡 : 각 모듈이 서로 다른 모듈의 기능을 필요로 할 때, 의존성 관리가 중요해지며, 프로젝트 복잡성을 증가시킴프로젝트 초기 설정 복잡 : 각 모듈의 독립적인 개발 및 배포를 위한 환경 설정과 의존성 관리가 필요  Mini-Service Architecture특징모놀리식과 마이크로서비스 아키텍처 사이의 중간 지.. 2024. 8. 22.
[MSA] Monolithic Architecture 와 MSA의 차이 Monolithic Architecture (모놀리식 아키텍처)특징소프트웨어의 모든 구성 요소가 한 프로젝트에 통합되어 있는 형태로 단일, 독립적인 단위로 개발모든 기능(사용자 인터페이스, 비즈니스 로직, 데이터베이스 액세스 등)이 하나의 코드베이스 내에 포함되어 있음장점개발의 단순성 : 하나의 코드 베이스와 개발 환경을 사용하기 때문에 초기 개발이 상대적으로 간단배포의 용이성 : 단일 애플리케이션이기 때문에 배포 프로세스가 간단하고 관리가 용이단점확장성의 제한 : 애플리케이션이 커질수록 업데이트와 유지 보수가 어려움. 특히, 특정 기능만을 확장하는 것이 어려움기술 스택의 제한 : 전체 애플리케이션의 기술 스택이 하나로 제한되어, 새로운 기술을 채택하기 어려울 수 있음부분 장애가 전체 서비스 장애로 이어.. 2024. 8. 19.
[DB] 함수와 프로시저 차이 및 활용 예시 함수(Function)개념 및 특징특별한 목적의 작업을 수행하기 위해 독립적으로 설계된 코드의 집합프로시저의 각 프로세스를 수행하기 위해 필요한 기능활용 예시사용자가 정의한 함수, 자주 사용되는 계산이나 변환 작업을 수행할 때 유용예) 날짜 형식을 변환, 특정 연산 수행 프로시저(Procedure)개념 및 특징일련의 쿼리를 마치 하나의 함수처럼 실행하기 위한 쿼리의 집합, 일련의 작업을 정리한 절차보통 단독으로 실행해야 할 작업을 위임 받았을 때 사용활용 예시대량의 데이터를 한꺼번에 업데이트하거나 복잡한 비즈니스 로직을 구현할 때 사용예) 상품을 구매하기 위해 로그인, 상품 선택, 상품 구매 등 여러 프로세스를 한 번의 프로시저에 담아 실행 함수와 프로시저의 차이함수는 로직을 도와주는 목적으로 사용, 프.. 2024. 7. 30.
728x90