DevOps

DevOps

[Docker] docker-compose 사용하기

(생활코딩 + codecamp 강의를 학습하며 정리한 내용입니다.) docker-compose 사용하기 컨테이너를 편하게 관리하고 실행하기 위해서 docker-compose를 사용한다. 아래와 같은 컨테이너 실행 명령어가 있다. docker network create wordpress_net docker \ run \ --name "db" \ -v "$(pwd)/db_data:/var/lib/mysql" \ -e "MYSQL_ROOT_PASSWORD=123456" \ -e "MYSQL_DATABASE=wordpress" \ -e "MYSQL_USER=wordpress_user" \ -e "MYSQL_PASSWORD=123456" \ --network wordpress_net \ mysql:5.7 dock..

DevOps

[Docker] RUN, CMD, ENTRYPOINT의 차이 + exec form, shell form의 차이

RUN과 CMD, ENTRYPOINT의 차이 Dockerfile 내부를 보면, RUN과 CMD, ENTRYPOINT 명령어가 있다. 셋 다 내부에서 명령어를 실행하기 위한 명령어로 보이는데, 무슨 차이가 있을까? 1. RUN RUN은 build로 이미지를 생성할 때 실행되어 이미지에 반영되는 명령어다. 2. CMD CMD는 해당 이미지로 컨테이너를 실행할 때 수행되는 명령어다. 3. ENTRYPOINT ENTRYPOINT 명령어도 CMD와 마찬가지로 컨테이너를 실행할 때 수행되는 명령어를 지정한다. 4. CMD와 ENTRYPOINT의 차이 CMD와 ENTRYPOINT의 사용방법에 대해 Docker 공식문서에서는 다음과 같이 설명하고 있다. Dockerfile은 CMD 또는 ENTRYPOINT 명령 중 하..

DevOps

[Docker] Dockerfile로 Image 생성하기

Docker에서 image를 생성하는 방법은 commit과 build로 두 가지가 있다. docker commit으로 image를 생성해보고, docker build로 내용의 image를 생성하는 방법을 알아보자. 1. Docker commit으로 image 생성하기 Docker를 이용해 아래와 같이 python 웹서버를 띄우고, commit을 통해 docker image를 만들었다. $ docker run --name web-server -it ubuntu:20.04 (컨테이너 안에서) $ apt update (컨테이너 안에서) $ apt install python3 (컨테이너 안에서) $ mkdir -p(www폴더가 없어도 생성하면서 html폴더까지 생성) /var/www/html (컨테이너 안에서)..

DevOps

[Docker] 입문하기

(생활코딩 도커 입문수업을 들으며 정리한 내용입니다.) Docker란 무엇이며, 사용하는 이유 일반적으로 어플리케이션을 개발할 때, 위 그림처럼 하나의 OS 안에서 Web Server, Database 등의 소프트웨어를 설치 및 실행하게 된다. 하지만, 각각의 소프트웨어를 설치하는 과정은 매우 까다롭고 귀찮다. 이러한 점을 해결하기 위한 방법이 아래와 같은 Vmware, Virtualbox 기술(가상머신)이다. 하지만, 위와 같은 방법은 소프트웨어별로 운영체제를 깔아야 해서 무겁고, 실행속도가 느리다는 단점이 있다. 그래서 나온 기술이 Container다. 각각의 Container에는 소프트웨어를 실행할 수 있도록 라이브러리(Libraries)와 실행파일(Binaries)만 세팅되어있다. 이를 통해 다양..

DevOps

[Docker] 기본적인 CLI 명령어

CLI 명령어 자주 사용하는 기본적인 명령어를 정리해봤다. 각 명령어의 세부 사항은 공식 사이트에서 확인하자. 공식 사이트 : https://docs.docker.com/engine/reference/run/ Docker run reference docs.docker.com $ docker pull [OPTIONS] NAME[:TAG|@DIGEST] 동작 : docker hub에 있는 docker image를 받아옴 예시 : $ docker pull httpd (아파치 서버) 옵션 : https://docs.docker.com/engine/reference/commandline/pull/ $ docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 동작 : docker image..

Isthis
'DevOps' 카테고리의 글 목록