
docker image를 다운받을 때 alpine 버전을 다운받으면 이미지의 사이즈를 줄일 수 있다. 예를 들어 nginx의 경우 일반적인 최신판을 다운 받을 경우에 아래와 같이 134MB인데 alpine 버전으로 다운 받으면 22.1MB로 줄어든 것을 볼 수 있다. alpine 버전을 받는 방식은 이미지마다 다름으로 Docker hub에 해당 이미지를 검색하여 tags을 확인해보는 것이 좋다 nginx의 경우는 alpine과 관련된 태그가 5개가 있었고 나는 그냥 alpine으로 다운 받았다. docker pull nginx:alpine

nginx 1. 프로젝트 최상위에 Dockerfile 생성 및 작성 FROM nginx:latest //베이스 이미지 작성 ADD . /usr/share/nginx/html //현재 폴더에 있는 파일들을 컨테이너 안의 /usr/share/nginx/html 경로로 복사 2. image 생성 cd 프로젝트경로 docker build --tag website:latest . //website라는 태그로 이미지 생성 3. 컨테이너 실행 docker run --name website -d -p 8080:80 website //--name website : website라는 이름으로 //-d : backgroud(detach mode) 실행 //-p 8080:80 : port forwading 8080->80 /..

1. 프로젝트 최상위에 Dockerfile 만들기 2. Dockerfile 작성 FROM openjdk:8 EXPOSE 8080 ADD target/springboot-docker.jar springboot-docker.jar ENTRYPOINT ["java","-jar","/springboot-docker.jar"] 1️⃣ FROM : 컨테이너가 운영될 환경 2️⃣ EXPOSE : 외부에 노출 될 포트 3️⃣ ADD : 컨테이너 빌드 시 호스트의 파일을 컨테이너로 복사(local 환경에 있는 프로젝트 내부에 만들어진 jar파일을 컨테이너로 복사한다) 4️⃣ ENTRYPOINT : 실행 할 명령어(CMD와 비슷하나 CMD는 실행시 인자를 받을 수 있으나 ENTRYPOINT는 인자를 받을 수 없다) ✨ j..
Mysql 실행 $ docker run -d --name mysql -v 마운트할위치:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=wordpress -e MYSQL_PASSWORD=wordpress mysql:5.7 wordpress 실행 - mysql : 컨테이너명, wordpressmysql은 alias docker run -d --name wordpress --link mysql:wordpressmysql -e WORDPRESS_DB_PASSWORD=wordpress -p 80:80 wordpress:4

네트워크 생성 - 새로운 네트워크를 testnet이라는 이름으로 생성 : 새로운 bridge가 생겼다!😬 docker network create --driver bridge --subnet 192.168.100.0/24 --gateway 192.168.100.254 testnet 네트워크 사용 - 앞에서 생성한 testnet이라는 네트워크를 사용 - 사용자지정 네트워크는 고정 아이피를 할당 하는게 가능 : 192.167.100.100으로 할당 docker run -it --name c1 --net testnet --ip 192.168.100.100 busybox

도커 이미지는 readonly속성을 가지고, 컨테이너에 추가되는 별도의 데이터들은 rw 레이어에 저장이된다. 데이터베이스를 운영하는 경우 고객의 데이터들이 rw(read/write)레이어에 쌓이게 되는데, 컨테이너를 삭제하게 되면 이 데이터들이 다 사라지게 된다. 만약에 실수로 컨테이너를 삭제하게 된다면.....그 결과가 너무 무섭다.. 그래서 컨테이너가 만들어주는 데이터를 영구적 보존이 필요한 경우, docker host에 별도의 저장소를 만들어서 관리를 하게 된다. mysql 데이터베이스의 경우 rw 레이어의 /var/lib/mysql에 쌓이게 되는데 여기에 있는 데이터를 별도의 저장소에도 저장해주면 실수로 컨테이너를 삭제해도, 데이터는 남아있을 수 있다. VOLUME 옵션 -v [host path]..
docker 명령어를 통해 제한 할 수 있는 리소스 docker run 할 때 옵션을 사용하여 리소스를 제한 할 수 있다. 1️⃣ CPU 2️⃣ Memory 3️⃣ Disk I/O 1️⃣ CPU 제한하기 옵션 의미 --cpus 컨테이너에 할당 된 CPU core수를 지정 --cupset-cups 컨테이너가 사용할 수 있는 cpu나 core를 할당. cpu index는 0부터 --cpu-share 컨테이너가 사용하는 cpu 비중을 1024값을 기반으로 설정 $ docker run -d --cpus=".5" ubuntu $ docker run -d --cpuset-cpus 0-3 ubuntu $ docker run -d --cpus-shares 2048 ubuntu 2️⃣ Memory 제한하기 옵션 의미 -..
- Total
- Today
- Yesterday
- 오토에버코테
- springboot
- Linux
- Kubernetes
- 현대오토에버
- 스프링
- 코테
- 자바코테
- nginx
- 쿠버네티스
- 자바
- 도커
- java
- 현대코테
- 아파치카프카
- Spring
- Docker
- centos
- softeer java
- softeer
- 리액트
- gcp
- 전자정부프레임워크
- react
- tomcat
- javascript
- 자바스크립트
- 톰캣
- 코딩테스트
- mysql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |