본문 바로가기

전체 글38

[Docker] 실습 :: 이미지 생성 https://docs.docker.com/language/python/develop/ 도커 공식 홈페이지의 Python 튜토리얼의 글을 보고 작성한 글입니다, 1. 이미지 생성법 해당 튜토리얼은 간단한 Flask 앱 기반으로 Docker의 사용법을 제시합니다. 튜토리얼에서 제시하는 Flask App은 간단히 서버 호출시 hello, docker!를 반환하는 앱서버입니다 ;) 1-1) 이미지 생성시 사용되는 Dockerfile 생성 우선 미리보기로 Dockerfile 내부는 이렇게 생겼다 확장자는 없다 Dockerfile # syntax=docker/dockerfile:1 FROM python:3.8-slim-buster WORKDIR /app COPY requirements.txt requirement.. 2022. 8. 19.
[Docker] 기초내용 (1) - 이미지, 컨테이너, 구성 도커의 컨테이너는 이미지를 이용하여 생성한다. 이렇게 이미지를 이용하여 만든 컨테이너는 도커 엔진 위에서는 동일하게 동작한다. 이미지란? 이때 컨테이너를 만드는 이미지의 구성을 알아보자 애플리케이션 구동에 필요한 코드 또는 바이너리, 런타임, 종속성 및 기타 파일 시스템 개체가 필요하다. 이때 이미지는 호스트 운영체제 (OS) 커널에 의존한다. 이 말은 만약 웹 서버 이미지 빌드시에는 Ubuntu Linux(기본 OS)가 포함된 이미지로 시작한다. 이후 php, apache 같은 패키지를 올린다. 물론 수동으로 구성이 가능하지만, 빌드/배포 를 동시하는 CI/CD 환경을 이용하여 도커설정파일(Dockerfile) 생성 가능하다. 근데 한번 생성된 이미지는 변경이 불가하다. 만약 변경하고 싶다면 변경 내용.. 2022. 8. 15.
[Docker] Basic - Docker 기본 정리 본 글은 를 읽고 정리한 글입니다 도커에 대한 의문점, 이미지, 컨테이너, 왜 쓰이는지를 정리한 글입니다. 0. 도커를 시작하며 본래는 개인용 컴퓨터나 서버에는 여러가지 프로그램들이 동시에 돌아간다. 우리가 컴퓨터를 쓸때 카카오톡, 웹서핑, 게임 등등,, 프로그램들을 컴퓨터의 리소스(자원)을 이용하여 돌린다. 따라서 1컴퓨터 = 1서버 라고 볼 수'도' 있다. 근데.. 만약 내가 쓰는 기능이 내가 가진 컴퓨터의 성능에 비하여 보잘것 없는데 그 프로그램만 쓴다면 너무 손해이지 않을까? 그래서 하나의 좋은 기능을 가진 컴퓨터의 리소스(자원)을 프로그램이 서로 문제 없이 나눠서 쓴다면 얼마나 좋을까? 1. 왜 있을까? 도커는 데이터 또는 프로그래밍을 격리시키는 기능을 제공하는 소프트웨어이다. 이 기능으로 인하.. 2022. 7. 3.
[git Error] There isn’t anything to compare.main and master are entirely different commit histories. There isn’t anything to compare. main and master are entirely different commit histories. 공부 목적으로 로컬에서 관리하던 폴더를 git에 올리는거 정리 기존 폴더에서 올리는 방법 1. repo 생성 2. terminal 에서 command 하기 git init git remote add origin [자신 repo 주소, ex) http,,, ~ ] git add . git commit -m 'init file' git push origin master 이때 마주친 문제? ( pr로 main에 올리고싶은데 안되는 ) 가 해당 위 문제다. pr 시에 두 브랜치는 비교하는 과정에서 defalute 브랜치가 master -> main으로 .. 2022. 7. 2.
[알고리즘 분석 #1] 2457 공주님의 정원 ( Greedy ) [알고리즘 분석] 포스트는 해당 문제의 풀이를 진행하는것이 아니라 왜 이 문제가 해당 알고리즘을 사용하는지 분석하는 챕터입니다 알고리즘 기초 공주님의 정원은 탐욕 알고리즘 (Greedy: 그리디) 를 이용한다 탐욕 알고리즘은 '현재에 최선을' 을 가지고 진행하는 알고리즘 즉 먼저 선택한 선택이 뒤의 선택에 영향을 주지 않는다 그러나 순간의 최선이 최적이라는 보장은 없다. 따라서 현 문제가 그리디가 맞는지 명확히 판단해야한다. 알고리즘의 이론적 해결과정 1. 선택절차 - 어떤것을 가치를 높게 잡을것인가 2. 적절성 검사 - 설정한 조건에 맞는가 3. 해답검사 - 순간의 최선의 결과가 해답의 조건을 모두 충족하는가 문제 적용 공주님은 특정 기간에 꼭 꽃을 보고싶음으로 필 수 있게 도와주는 알고리즘이다. 조건.. 2022. 6. 16.
[TIL] Unit Testing 1,2장 단위테스트 (Unit Testing) - 블라디미르 코리코프 책을 읽고 정리한 내용 단위 테스트란? 작은 코드 조각 검증 빠르게 수행 격리된 방식으로 처리하는 자동화된 테스트 격리란? -> 런던파 / 고전파를 나누는 척도 하나의 클레스가 다른 클레스 또는 여러 클래스에 의존하면 해당 의존성을 테스트 대역(test double)으로 대체해야하는 것. 즉, 동작을 외부영역과 나누어야한다. 의존성이 걸려있는것은 따로 검사함으로써 묶여있는 문제를 해결할 수 있다. 앞 내용에서 외부 라이브러리로 인하여 여러 예외에 빠질수 있는 예시가 있었다. 3. 이점 각 의존성을 확인하려면 객체 그래프를 그리는 방법밖에 없다. 그러나 구조가 복잡함으로 그냥 하나의 class에 하나의 단위 테스트를 만들면 된다는 지침을 만든다... 2022. 5. 26.
[기초 Network #1] IP, TCP/UDP, DNS, URI, URL 그리고 전송과정 학교에서 컴퓨터 네트워크를 수강하였지만, 2학년때 어째서 배워야 할지도 모른 채 배워 부족한 부분을 많이 느껴 정리하고자한다. 해당 글은 김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식 을 듣고 정리하였다. 컴퓨터는 어떻게 통신할까? 이는 너무 두리뭉실하다 . 사실 메세지 쏘면 알아서 내가 보내고픈 곳으로 보내고 res를 받고싶다. 그러나 세상에는 이런 보내는것에도 규약(Protocol)이 있다. 이것을 인터넷 프로토콜 이라고 한다. 어떻게 통신을 할지 규칙을 정해 놓은것이다. 이 규약은 스택구조로 이루어져 있다. 각 기능들의 한계점을 보완하고 과정들을 설명하기 편하게 계층으로 나눠놓을것이다. 강의에서는 4계층으로 설명한다. 인터넷 프로토콜 ( Internet Protocol )의 구성 이 규약을 .. 2022. 4. 16.
[System Programming #2] SIC & SIC/XE 앞 내용에서는 SIC에서 사용하는 기본적인 명령어와 레지스터를 정리하였다. https://sdhg12.tistory.com/4 이제는 SIC 및 SIC/XE의 규칙에 관하여 정리할 예정이다. [Data Format] integer는 24bit binary number로 저장된다. Charactersms 8 bits의 아스키코드로 저장된다. 소수점은 x SIC [Machine Instruction Format For SIC] 앞 #1에서 설명했듯 SIC에서는 24bits의 instruction set을 쓴다.을쓴다. 이 포맷 내에서 주소를 지정하는 방법(Addressing Mode)을 고를 수 있다. 주소를 알아야 메모리에 담겨있는 명령을 수행할 수 있지 않을까,, 따라서 이런 주소를 지정하는 방법에는 여.. 2022. 4. 5.
[소비 #1] 매직키보드2 매직 키보드2를 삿다. 왜 다들 좋다고 하는지 알겠다. 아마 내꺼는 이거인거같은데, 당근에서 10만원에 미개봉 새제품 삿다. 치킨 한마리 값 아껴서 기분이 좋아융 ( 19000원) 그리고 당근 온도도 올라갔다. 가면서 포켓몬도 잡았다. 일석이조? [구매한 이유] 사실 이거에 대해 생각을 하자면, 옛날에는 이걸 왜사나,, 싶었다. 이때, 사지 말아야할 이유는 가격이 너무 비싸 가격이 너무ㅜㅜ 비싸 no money 사야할 이유를 적어보면 예쁘다 예ㅔㅔㅔㅔ쁘다 엄청 예쁘다 美しい beautiful 말 장난 치는거 같은데 위 이유는 명확히 사야할 이유를 명시한다. 왜냐하면 나는 내 기분에 따라 능률이 달라지는 타입인데 예쁜걸 사면 다음 매커니즘에 따라 돌아간다. [키보드 예시] 예쁜걸 봄 -> 기분 좋아짐 ->.. 2022. 4. 4.