(SW도봉1기) - 도커 컴포우즈1

novice developer·2024년 1월 30일

Saltlux

목록 보기
18/22

도커 컨테이너 접속하기

1. 도커에서 파이썬 3.10.2 이미지 불러오기

docker pull python:3.10.2

2. 도커 컨테이너 띄우기

docker run --name python-container -it -d python:3.10.2

3. 도커 컨테이너 접속하기

docker exec -it python-container python3

4. vs-code 에서 접속하는 방법

a. 익스텐션에서 remote Devleopment 팩 설치

b. 파레트를 통해 dev - dontainer 에서 실행중인 컨테이너 접속

설치 완료하면

뜨고 엔터하고 들어가서 컨테이너를 선택하면 된다

1. 리눅스(ubuntu) 환경 기본 세팅하기

curl ,git ,vim 설치
apt-get update
apt-get install curl git vim -y

#pyenv 설치 전 종속성 해결
apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev

2. pyenv 설치하기

pyenv 설치

curl https://pyenv.run | bash

.zshrc에 환경변수 추가
vi ~/.bashrc (~/.bash_profile, ~/.zshrc)

~/.bashrc 파일 가장 아래 쪽에 아래의 명렁어 추가
shift+g 를 입력하면 파일의 가장 아래쪽으로 이동
아래 명령어를 파일에 추가

export PATH="~/.pyenv/bin:$PATH"

eval "$(pyenv init --path)"

eval "$(pyenv init -)"

eval "$(pyenv virtualenv-init -)"

source ~/.bashrc source ~/.zshrc

3. python 런타임 설치

설치 할 수 있는 버전 확인
pyenv versions

메이저 버전 중 가장 최신 버전을 설치합니다.
pyenv install 3.8.15

4. virtualenv를 이용한 가상환경 설정

pyenv virtualenv 3.8.15 ssac

pyenv versions 로 버전 확인해보면 가상환경도 나온다

python activate ssac 해보면 잘 실행된다.

5. 컴포즈


에러남 연결 해줄 매개체도 없고 독립되어있음

고로, 네트워크가 필요함

docker network create my-network
docker network connect my-network postgres-server
docker run -d --name data-generator --network "my-network" data-generator "postgres-server"

문제점

컴포즈란?


띄우기전에 컨테이너를 먼저 띄워줘야함

healcheck 라는 옵션을 통해 db컨테이너를 먼저 실행하고 제네레이터가 실행되게 하는 옵션

5. 클라우드 서비스


Compute Engine > VM 인스턴스 클릭으로 누르면 된다





SSH로 publick key, private key 생성을 해야함
이후 power shell에 넣으면 됨

ssh-keygen -t rsa -b 4096 -f gcp_rsa_4096 -C 여기는 이메일


이후 gcp_rsa_4096.pub 을 열어 그값을 넣으면된다 (필자는 vscode로 열음, power shell 에서 볼꺼면 type 파일로 해도됨)

mv -t file1 file2 경로
-t 없으면 경로중에 없는 디렉터리가 있으면 만들고 생성
근데 파워셀은 옵션명령이 안먹으니 걍 만들고 ㄱㄱ


로 원격 접속을 위한 설정을 해줘야 함

들어가서 아까 만든 경로 입력

host는 자유롭게 지정 엘리야스임(별칭)
HostName 는 외부 ip
identityfile 생성한 키의 경로 지정
User GCP에서의 유저이름 (구글 클라우드 > 컴퓨터 엔진 > vm 인스턴스 )


만들면 다음과 같은 화면이 나온다


1. 데이터 베이스란?

메타데이터



데이터 종류 SQL vs NoSQL

SQL
RDBMS는 테이블 형태로 값을 관리하고 테이블 간의 관계를 맺어 계층 등을 만들 수 있다


예시의 redis를 보자 -> 서버에서 1000만건의 데이터를 가지고있다면 조회할때마다 비용이든다 그래서 자주쓰는 500만건정도를 추려서 데이터를 여러개를 쓰고 그중 100만건만 조회용으로 쓴다면 redis(휘발성이다)을 쓴다

2. SQL

SQL이란?




profile
초보개발자

0개의 댓글