728x90
tomcat
## docker mounting
1. 옵션으로 mounting 하여, 컨테이너를 생성한다.
2. Dockerfile로 mounting하고 이미지로 만든다.
1. 옵션으로 mounting 하여, 컨테이너를 생성한다.
docker run -d -p 40040:8080 -it -v /home/tiger/webapps/ROOT.war:/usr/local/tomcat/webapps/ROOT.war --name mt-test04 tomcat:9
2. Dockerfile로 mounting하고 이미지로 만든다.
2-1. Dockerfile 작성
FROM tomcat:9
ADD ROOT.war /usr/local/tomcat/webapps/
EXPOSE 8080
CMD chmod +x /usr/local/tomcat/bin/catalina.sh
CMD ["catalina.sh", "run"]
2-2. Dockerfile build하기 ( docker build [이미지파일]:[태그 이름] )
docker build -t yu07na06/hello:latest ./
## docker hub 올리기
1. image로 만든다. ( docker commit [컨테이너 이름] [이미지 이름] ) -- Dockerfile로 build했다면, 이 과정은 생략
docker commit mt-test my-tomcat
2. docker homepage에서 repository만들기
3. docker login을 한다.
docker login
4. docker image tag를 수정한다. ( docker tag [기존 이미지 이름]:[기존 태그] [사용자 계정]/[repository name]:[사용할 태그 이름] )
docker tag my-tomcat:latest yu07na06/hello:latest
5. docker hub로 push ( docker push [수정한 태그 이름] )
docker push yu07na06/hello:latest
## docker image 가져오기
docker pull yu07na06/hello:latest
mysql
# mysql container 생성
docker run -d -e MYSQL_ROOT_PASSWORD=1 -v /db/data:/var/lib/mysql -p 49180:3306 -it --name ms-test02 mysql:latest
# mysql 권한 부여
docker exec -it ms-test01 mysql -u root -p
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;
# Dockerfile 작성
FROM mysql:latest
ADD ./db/data/ /var/lib/mysql
ADD ./mysql-dump/ /docker-entrypoint-initdb.d
EXPOSE 3306
ENV MYSQL_ROOT_PASSWORD=1
CMD chmod +x /entrypoint.sh
CMD ["mysqld"]
# image 만들기(build 이용)
docker build -t yu07na06/hello:ms ./
# 만든 image로 컨테이너 생성
docker run -d -v /db/data:/var/lib/mysql -p 49180:3306 -it --name ms-con01 yu07na06/hello:ms
# 옵션 설명
728x90
'웹 full stack 교육 > 이론' 카테고리의 다른 글
[AWS] 세팅 및 원격 접속 (0) | 2021.10.07 |
---|---|
[docker] network 연결 (0) | 2021.10.06 |
[JavaScript] reduce (0) | 2021.10.02 |
[JavaScript] 기초 문법(5) - 배열 (0) | 2021.10.02 |
[docker] docker 설치 및 compose 설치와 실행 (0) | 2021.10.01 |