도커실행 -> 도커 데몬실행 = 도커 데스크탑(UI)
docker ps -a = 도커 전체 목록
docker rm 컨테이너 ID = 도커 컨테이너 삭제
docker rmi 컨테이너 ID = 도커 이미지 삭제
dockerhub에서 redis 가져와서 실행
last 버전 컨테이너 생성
-d => 백그라운드 모드 실행
80:80 => Host port:컨테이너 port
localhost접속 => Host port 자동 80 포트
버전 지정 컨테이너 생성
실행 후 localhost 확인
docker 이미지만 가져오고 컨테이너 실행 X
docker pull nginx:1.20
docker 최초 실행 = docker run
docker 컨테이너 중지 = docker stop
docker 컨테이너 stop 후 시작 = docker start
mysql docker 실행
docker run --name board_mysql -e MYSQL_ROOT_PASSWORD=1234 -d -p 3306:3306 mysql:latest
접속방법
1. 컨테이너 호스트에 접속 후 mysql 접속
- 컨테이너 호스트접속 : docker exec -it 컨테이너 ID /bin/sh
(-it 옵션 : 터미널을 대화형(interactive) 모드로 실행하고, 표준 입력(stdin)을 연결)
- mysql -u root -p
2. 바로 mysql 접속
docker exec -it b3b26a22e0d4 mysql -u root -p
redis docker 실행
docker run --name myredis -d -p 6379:6379 redis
redis docker 접속
docker exec -it myredis redis-cli
ubuntu docker 실행
docker run -d -it ubuntu /bin/bash
ubuntu docker 접속
docker exec -it 40a8f95d7256 /bin/bash
docker 컨테이너 삭제
중지되어 있는 컨테이너 삭제
docker rm -f $(docker ps -q -f status=exited)
created상태인 컨테이너 삭제
docker rm -f $(docker ps -q -f status=created)
docker 컨테이너 log 확인
docker logs 컨테이너 ID
docker logs --tail 5 컨테이너 ID
docker build
빌드한 docker images 확인
컨테이너 실행
docker run -d myjava:v1.0
도커 컴포즈 버전 확인
docker-compose --version
최초에는 docker-compose up => 테스트해보니 문제 => docker-compose down => 수정 => docker-compose build : 이미지 갱신 => docker-compose up
ordering docker build(백엔드 서버)
ordering, ordering-fronted 폴더 복사 붙히기
파일 복사 붙혀 넣기 할때 Intellij에서 먼저 정상적으로 서버가 잘 동작하는지 확인하고 복붙하고 docker build 진행하기
build가 정상적으로 진행이 안된다면 Intellij에서 java버전 맞추기
Dockerfile
FROM openjdk:11 as stage1
WORKDIR /app
# gradle 빌드시에 필요한 파일들을 workdir로 copy
COPY gradlew .
COPY gradle gradle
COPY build.gradle .
COPY settings.gradle .
COPY src src
# /app/build/livs/*.jar 파일 아래 명령어를 통해 실행
RUN ./gradlew bootJar
FROM openjdk:11
WORKDIR /app
COPY --from=stage1 /app/build/libs/*.jar app.jar
#CMD 또는 ENTRYPOINT 를 통해 실행
ENTRYPOINT [ "java","-jar","app.jar"]
1. docker build -t order_backend:v1 .
2. docker run -d -p 8080:8080 order_backend:v1
3. docker ps
서버 시작 후
docker logs 컨테이너 ID = 로그 확인 시
DB Connection이 안된다.
applicaion.yml 파일 URL을 localhost가 아니라 Host의 DB를 바라볼 수 있도록
url: jdbc:mariadb://host.docker.internal:3306/spring_order 로 변경
URL 변경 후 재 빌드
시간이 지나도 서버가 정상적으로 동작하는 것을 확인 가능하다.
ordering-fronted docker build(프론트 엔드 서버)
Dockerfile
FROM node:20
WORKDIR /app
COPY . .
RUN npm install
ENTRYPOINT [ "npm", "run" , "serve"]
.dockerignore
node_modules
dist
1. docker build -t order-fronted:v1 .
2. docker run -d -p 8081:8081 order-fronted:v1
3. docker ps
build
docker build -t order-fronted:v1 .
run
docker run -d -p 8081:8081 order-fronted:v1
'Cloud > AWS' 카테고리의 다른 글
Docker2_2024_03_04 (1) | 2024.03.05 |
---|---|
AWS 배포4_Git action_2024-02-28 (0) | 2024.03.05 |
AWS 배포3_Git action_2024-02-27 (0) | 2024.02.27 |
AWS 배포2_2024-02-27 (0) | 2024.02.27 |
AWS 배포1_2024-02-26 (0) | 2024.02.27 |