본문 바로가기
Docker

도커를 활용한 Spring Boot 프로젝트 예제: PostgreSQL 연동과 데이터 관리 방법 (1)

by 플라퉁 2023. 2. 20.
728x90
반응형

*도커 사용 예제1

 

1. spring boot 프로젝트를 docker로 실행해 보자

- spring boot 프로젝트를 Gradle을 사용하여 빌드한다.

- 프로젝트 최상단에 Dockerfile을 생성하고 세팅한다.

 -     터미널에서 다음 명령을 실행하여 Docker 이미지를 빌드합니다.

        docker build -t <image-name> .

        (현재 디렉터리를 빌드 컨텍스트로 지정하는 끝에 있는 점에 유의하십시오.)

 

-      방금 빌드한 이미지에서 컨테이너를 시작합니다.

        docker run -p <host-port>:<container-port> <image-name>

 

-      이제 애플리케이션에 액세스할 수 있습니다.

        http://localhost:<host-port>

 

 

 

 

 

*spring boot postgreSQL docker로 연동하기

   - docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -d postgres

해당 명령어로 컨테이너를 실행한다.

 

-      Application.yaml에서 PostgreSQL 컨테이너에 연결한다.

-      Jdbc:postgresql://<docker-host-ip>:5432/postgres

-      여기서 <docker-host-ip> Docker 호스트의 IP 주소입니다.

 

애플리케이션 코드에서 다음 연결 세부 정보를 사용합니다.

주인 : <docker-host-ip>

포트 : 5432

데이터 베이스 : postgres

사용자 : postgres

비밀번호 : mysecretpassword

연결 세부 정보는 특정 사용 사례 및 구성에 따라 다를 수 있습니다

 

*postgreSQL 컨테이너에 데이터 수동 넣기

docker run -it --rm --link some-postgres:postgres postgres psql -h postgres -U postgres

해당 명령어 사용하여 sql명령어로 데이터 삽입 가능

 

Ex).

postgres=# CREATE DATABASE mydatabase;

postgres=# \c mydatabase;

mydatabase=# CREATE TABLE mytable (id SERIAL PRIMARY KEY, name TEXT NOT NULL);

mydatabase=# INSERT INTO mytable (name) VALUES ('John Doe');

mydatabase 이라는 데이터베이스가 생성되고 mytable 이라는 테이블이 생성되며 John Doe 이라는 이름의 단일 행이 삽입 됩니다.

728x90
반응형

댓글