728x90
📌Index 간단한 Node.js 작성해보기 Node.js web app으로 Docker image 만들기 Node.js란 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 이러한 node.js를 docker에 배포해보자. ✔️ 간단한 Node.js 작성해보기 먼저 node.js 를 사용하기 위해 저장소를 추가하고 패키지를 설치하자 여기서는 버전16을 사용할 예정이다. $ curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - sudo apt-get install -y nodejs 다음으로 실습을 진행할 환경(디렉토리)를 구성하자. $ mkdir -p node/web $ cd node/web Get..
📌Index 환경 구성 Go 기초 실습 Web Application 만들기 Go App으로 Docker image 만들기 Docker에 Gin 배포하기 Go 란 구글(google)에서 개발한 언어로, 간결하고 신뢰성 있으며 효율적인 소프트웨어를 손쉽게 만들기 위한 오픈소스 프로그래밍 언어이다. GoLang은 간결한 의존성 해석 알고리즘을 통해서 다른 컴파일 언어에 비해 빌드가 빠르다는 장점이 있다. ✔️ 환경 구성 먼저 실습을 진행할 환경을 구성하자 디렉토리 만들기 $ mkdir golang $ mkdir hello $ cd /golang/hello golang 설치하기 $ sudo apt install golang go module 만들기 Golang에서 module은 Django에서의 App과 비슷한..
📌Index 환경 구성 Django Default Home Page 띄워보기 Polls app 배포하기 .dockerignorefile이란? Django App으로 Docker 이미지 만들기 장고(Django)란 파이썬으로 만들어진 무료 오픈소스 웹 애플리케이션 프레임워크(web application framework)이다. 풀 스택 프레임워크이며, Python을 통해 작성한다. ✔️ 환경 구성 tutorial에 따라 진행해보자 가상 환경 만들기 가상 환경을 사용하는 이유와 설명에 대해서는 여기에서 확인할 수 있다. $ mkdir ~/python/hello-django $ cd ~/python/hello-django 가상프로젝트/프로젝트를 생성 $ python3 -m venv venv 가상 환경 활성화 ..
📌Index 환경 구성 Application 만들기 Freeze Flask App으로 Docker 이미지 만들기 Flask란 마이크로 서비스 웹 프레임워크로 간단한 웹 사이트, 혹은 간단한 API 서버를 만드는 데에 특화되어있다. (python 3.7 이상 필요) ✔️ 환경 구성 Flask 환경 구성을 위해 아래의 3가지를 설치하자 python3 python3-pip python3-venv pip 는 파이썬 패키지를 설치하고 관리하는 도구이다. pip 는 python2의 패키지 관리자 pip3는 python3의 패키지 관리자 $ sudo apt install python3-pip python3-venv 가상 환경 가상환경(virtual environment)는 Python에만 존재하는 개념으로, 가상환경..
📌Index python:3.9-buster 이미지 사용하기 python:3.9-slim-buster 이미지 사용하기 python:3.9-alpine 이미지 사용하기 먼저 아래의 3가지 python 이미지를 pulling 하자 : Debian + Python3 python:3.9-buster : 대부분의 필요한 패키지가 설치된 것 python:3.9-slim-buster : 표준 라이브러리를 제외하고 전부 제외된 것 python:3.9-alpine : BusyBox Linux + apk 패키지 관리자 $ docker image ls | grep python python 3.9-buster 2081325398fc 2 weeks ago 889MB python 3.9-slim-buster 975c845dddf..
Dockerfile을 통해 도커 이미지를 빌드할 때, Dockerfile의 레이어(Layer)와 캐싱(caching) 문제로 패키지 관련 이슈가 발생할 수 있다. 앞서 이미지 레이어에 대해서 설명할 때, 이미지 레이어 캐싱을 통해 얻을 수 있는 장점은 데이터 저장의 효율성과 재사용에 의한 빌드 시간 단축이라고 설명한 바 있다. Dockerfile에 정의된 명령어와 이전 명령어들이 같다면 동일한 레이어로 판단하기 때문에 다시 다운로드 받지 않으며, 캐싱되어있는 부분을 가져온다. 결과적으로 데이터 저장의 효율성과 빌드 시간 단축이라는 효과를 얻을 수 있는 것이다. 공식 홈페이지 문서의 Dockerfile 작성 안내에서도 다음과 같이 설명하고 있다. A Docker image consists of read-o..