목록IT Infrastructure (25)
불친절한 블로그
1. postgres 이미지를 받습니다. $ docker pull postgres 2. 데이터베이스 계정설정 $ dockr run -d -p 5432:5432 --name pgsql -e POSTGRES_PASSWORD=1234 postgres 3. 컨테이너에 접속 후 postgres 설정 $ docker exec -it pgsql bash $ psql -U postgres # CREATE DATABASE mytestdb; #\q 4. pgadmin 연동 확인
세팅해야하는 환경 : 파이썬, 쥬피터, DB(postgres), pgadmin -> docker-compose docker 공식홈페이지 예제 실시 app.py import time import redis from flask import Flask app = Flask(__name__) cache = redis.Redis(host='redis', port=6379) def get_hit_count(): retries = 5 while True: try: return cache.incr('hits') except redis.exceptions.ConnectionError as exc: if retries == 0: raise exc retries -= 1 time.sleep(0.5) @app.route('/..
처음 Docker를 접했을땐 파이썬을 쓰려면 Docker hub에 누군가가 세팅해놓은 이미지를 pull해서 사용했다. Dockerfile을 만드는게 어렵게만 다가왔다. 어느때와 같이 누군가 세팅해놓은 jupyter notebook을 pull해서 내 환경을 맡추고 있었는데, python 패키지중 psycopg2가 설치시 오류가 계속해서 발생했다. 구글링을 통해서 docker update, upgrade를 하고, python 버전 upgrade 하고 해도 psycopg2가 설치되지 않았다. 참고 파이썬 버전 변경 sudo rm /usr/bin/python3 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1 sudo..
우선 업데이트를 진행합니다. sudo apt-get update ssh 설치해야겠죠? openssh-server를 설치하기 위해 sudo apt-get install openssh-server 입력 설치 잘됐나 확인해야지? dpkg -l | grep openssh 설치 결과 ssh서버 서비스 시작하려면 또 명령어가 필요하겠죠? sudo service ssh start ssh가 잘 실행 중인지 확인해보죠 service --status-all | grep + 이제 putty로 확인 가자! 됐다!!
자신만의 환경 만들기 (dockerHub) 1. 우선 dockerHub 계정이 있어야한다. 2. docker login 명령어 입력해서 dockerHub에 로그인 한다. 3. 이미지 업로드한다. docker push [repository명]/[tag명] 지금은 이미 만들어놔서 이미 있다고 나오는데 처음엔 저 명령어 입력해도 안됐었다. 찾아보니까 이미지를 만들어야 된다고 하더라... 아직도 헷갈린데 이미지와 컨테이너의 개념이 이해가 잘 안됐다. 시스템과 서비스에 필요한 코드를 모아둔 최소한의 단위를 이미지(image)라 한다. 도커는 실행에 필요한 시스템과 서비스를 운영하는데 필요한 단위를 컨테이너(container)라 한다. docker images 로 이미지 확인을 한다. 이미지가 없으면 아무것도 안뜨..
도커 파이썬 환경구축 구글링으로 도커 파이썬 환경이라고만 검색을 했다. docker run -it python:3.7.0b4-stretch 설치도 안했는데 run 시키라고 하길래 '뭐야 설치하는 법은 생략했네'라고 생각했다. 그래도 해보자 해서 명령어를 넣었더니 찾는 이미지가 없다고 뜨더니 알아서 dockerHub에서 검색을 해와서 python 환경을 구축해버렸다.... docker run -it python 이렇게만 쳐도 검색해서 python 환경 구축해준다...
Docker는 반 가상화보다 경량화된 방식이고. 게스트 OS를 설치하지 않는다. 그리고 Docker에서는 분리된 공간을 이용해 서버 운영을 위한 프로그램과 라이브러리를 쉽게 설치할 수 있다. 하드웨어를 가상화하는 계층(Hyper-V)이 없으며, 호스트의 자원을 직접 이용하기 때문에 메모리 접근, 파일시스템, 네트워크 속도가 가상머신에 비해 월등히 빠르다. 그러므로, 메인 호스트와 Docker의 컨테이너 사이의 계층과 성능차이는 크게 발생하지 않는다. 솔직히 와닿지 않는다. 정말 docker가 편한지가 알고 싶다. 1 개발 프로그램 설치와 삭제가 매우 쉽다. 5분이면 된다. (elk, reids, mongodb, oracleDB, mysql) 등등. 직접 패키지 인스톨(yum, apt-get, brew..
$ git clone https://github.com/raccoonyy/django-sample-for-docker-compose.git 예제 compose 구성용 예제 프로젝트를 받아온다. 도커 이미지 생성하기! 도커 이미지 잘 생성됐나? 확인! docker-compose.yml 파일을 만들어줘야하는데 1. version docker-compose.yml 파일의 버전을 적습니다. "3"으로만 적으면 3으로 시작하는 최신 버전을 사용한다는 의미입니다. 2. services 실행하려는 컨테이너들을 정의합니다. docker-compose에서는 컨테이너의 개념으로 서비스를 사용합니다. 여기까지 기본정보입력입니다. 3. db db를 이용하기 위해 services 안에 db를 입력합니다. 4. i..