나의 실습환경
- aws ec2 리눅스 환경
- putty
docker 네트워킹
docker container run -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=fleetman -d mysql:5
docker container exec -it [containerID or containerName] bash
mysql -uroot -ppassword
show databases;
- -e MYSQL_DATABASE=fleetman --> fleetman 이라는 데이터베이스 생성
도커 컨테이너이름을 도메인 이름으로 연결할수 있음
몇가지 단계가 필요
docker network create my-network
docker network ls
--> --network my-network로 내가 생성한 네트워크에 설정 및 컨테이너 이름 지정
docker container run --network my-network --name database -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=fleetman -d mysql:5 -- 데이터베이스 실행
docker container run -d -p 80:8080 --network my-network --name fleetman-webapp fleetman-webapp -- 웹 실행
docker container exec -it [containerID] sh -- 웹 컨테이너에 접속
연결됬는지 확인
ping database --> 컨테이너 이름이 database 연결 확인
ping google.com
docker build -t my_image:prod -f Dockerfile-jar-version . -- 도커 파일 이름 강제로 지정할때 사용
- 파일이름이 Dockerfile-jar-version
FROM openjdk:8u131-jdk-alpine
EXPOSE 8080
WORKDIR /usr/local/bin/
COPY target/fleetman-0.0.1-SNAPSHOT.jar webapp.jar
CMD ["java","-Dspring.profiles.active=docker-demo","-jar","webapp.jar"]
docker container run -it --network my-network alpine -- 3번째 컨테이너
alpine 명렁어
apk add --no-cache mysql-client -- mysql 설치
mysql -uroot -ppassword -hdatabase
mysql 명령어
show databases;
use fleetman;
'가상화 기술과 관리 > Docker' 카테고리의 다른 글
Docker 노트정리4 (docker-compose) (0) | 2024.02.24 |
---|---|
Docker 노트정리3 (도커 볼륨) (1) | 2024.02.17 |
Docker노트정리 commit, build(jar, war) (0) | 2023.12.25 |
[Docker] image commit, build 방식 차이 (1) | 2023.12.23 |
[Docker compose] 도커 컴포즈 정리 (0) | 2023.12.09 |