목록전체 글 (182)
취미가 좋다
Docker Network 란? 도커 컨테이너들은 분리된 file system과 네트워크를 가지므로, 도커 네트워크를 통해 컨테이너간 통신을 가능하게 해준다. Docker Network 문법 1. 도커 네트워크 생성 docker network create test 2. 컨테이너 실행할 때 도커 네트워크 연결 docker run -d -p 24017:24017 --network test --network-alias mongo mongo --network 옵션으로 test 네트워크에 연결한다. --network-alias 로 앞으로 이 컨테이너에 연결하고 싶을 때, 이 네트워크 안에서 mongo 라는 이름으로 연결한다. 3. 컨테이너에서 다른 컨테이너 호출하기 docker run -it --network t..
코드를 변경할 때마다 이미지를 새로 만들고 띄우기는 매우 불편하다. 이 글에서는 코드가 변경되었을 때, 이미지를 새로 생성하지 않더라도 바로 적용될 수 있는 법을 알아본다. Docker bind mount docker run -v {host_path}:{container_path} bind mount의 문법은 위와 같고, 이전에 볼륨을 마운트 하는 것과 유사하다. 이를 사용해서 메모 어플리케이션을 실행한다. docker run -v "$(pwd)/templates:/templates" -p 80:5000 wellshsdocker-memo:version2 docker run -v ./templates:/templates -p 80:5000 wellshsdocker-memo:version2 로컬에 있는 $(..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/beSPh1/btraPuqwKWp/glO2Ntjann86x2eFObHkok/img.png)
컨테이너의 데이터 일반적으로 도커 컨테이너를 실행한 서버에서 무언가를 작업하고 저장하더라도, 컨테이너가 삭제되면 그 정보도 사라진다. 도커는 다시 실행시켜야 하는 일이 무조건 존재하기 때문에, 컨테이너가 삭제되더라도 정보를 유지시킬 필요가 있다. 컨테이너가 실행되면 매번 비어있는 메모리에서 시작한다. 또한 컨테이너끼리는 같은 이미지이더라도 file system을 공유하지 않는다. named volume & bind mount 두 가지 기능으로 위의 문제를 해결할 수 있다. MongoDB docker로 띄우기 컨테이너에 할당된 메모리에 저장되던 데이터를, mongodb에 저장할 것이다. docker run --name mongo_db -p 27017:27017 -d mongo Robo3T 다운로드 : 편하..
Docker registry docker registry는 이미지를 저장하고, 분배하기 위한 저장소이다. git repository에 git hub이 있다면 docker registry에는 docker hub 가 있다. Docker Hub Container Image Library | App Containerization Build and Ship any Application Anywhere Docker Hub is the world's easiest way to create, manage, and deliver your teams' container applications. hub.docker.com Docker 이미지 업로드하기 가장 먼저 아래의 작업을 수행한다. Docker hub에 가입 repos..
flask 어플리케이션을 도커로 실행해보자. 도커 실습을 하기 위해, 아래의 코드로 정해진 구조를 만든다. 코드 구조 . ├── app.py ├── requirements.txt └── templates └── index.html app.py 더보기 from flask import Flask, render_template, jsonify, request app = Flask(__name__) import requests from bs4 import BeautifulSoup articles = [] ## HTML을 주는 부분 @app.route('/') def home(): return render_template('index.html') @app.route('/memo', methods=['GET']) ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c7hlAW/btraHstTb36/q1sMoEJXD3eKbb8Kgb62LK/img.png)
도커란 원하는 프로그램을 쉽게 실행하기 위한 플랫폼 도커의 구성요소 docker image & container image는 어플리케이션을 실행하기 위한 필요한 모든 것이 생성되어 있는 파일입니다. container는 image를 사용하여 실행한 것입니다. 프로세스의 독립성을 보장하기 위해서 네트워크나 저장소가 분리되어 있습니다. docker registry docker image를 저장하는 공간 dockerd docker API requests를 받아서 docker object(image, container등)를 관리 docker client 사용자가 docker를 사용하기 위해서 사용하는 cli 간단한 어플리케이션을 Docker로 실행해보기 docker run docker run [options] {..