목차

    이번에는 vs Code와 git을 연동해보겠습니다.

     

     

    깃 사이트 들어가기

    위와 같이 VScode에서 클릭하셔서 들어가셔도 되고, git-scm.com/를 클릭하셔서 들어가셔도 됩니다.

     

     

    들어가시면 오른쪽 사진과 같은 사이트가 들어가 지는데, Downloads 에 들어가신 후 본인에 맞는 운영체제에 맞는 설치파일을 선택 후 설치해주세요

     

     

     

     

     

     

     

     

     

     

     

     

    그러시고, VS코드를 재 시작하시고 다시 깃 마크를 클릭해보시면 !!'

    위와같이 변경이 되어있습니다 .!! 

     

    만약 다른 깃 연동 프로그램을 사용하시지 않았었다면  git-scm.com/book/ko/v2/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0-Git-%EC%B5%9C%EC%B4%88-%EC%84%A4%EC%A0%95

     

    Git - Git 최초 설정

    Vim과 Emacs, Notepad++은 꽤 인기 있는 편집기로 개발자들이 즐겨 사용한다. Mac이나 Linux 같은 Unix 시스템, Windows 시스템에서 사용 가능하다. 여기서 소개하는 편집기들이 불편해서 다른 편집기를 사

    git-scm.com

     

    위 사이트를 참고하시면 됩니다.! 

     

    제 기억이 맞다면 

    $ git config --global user.name "John Doe"
    $ git config --global user.email johndoe@example.com

    위와 같은 모양으로 로그인 메일 및 유저 아이디를 넣어주신다음 'vs 코드' 를 다시 키시면 연결이 되는 것으로 기억합니다!

     

    만약 레포지토리를 clone하고 싶으시다면 , F1 혹은 ctrl + shift + p 를 누르시면 위에 검색같은것이 나옵니다.

    거게에 Git:clone 을 치시고 클릭을 하신다면 허가를 해달라고 할 것 입니다. 

    이렇게 말이죠 ( 저는 크롬으로 나왔습니다. ) continue를 누르셔서 진행을 해주세요

    이제 진짜 허가를 해달라는 창이 뜹니다. 이제 허가를 해주죠

     

    성공을 하셨습니다. 이제 clone을 하시면 됩니다.

     

    다시 vs코드로 돌아가시면

     

    위와같이 매우편하게 클릭하실 수 있게 됩니다.

     

    그렇게 원하시는 폴더를 지정하시면,  clone이 되고, 이제 그 폴더를 열어보시면 잘 불러와 질 것입니다.!!

     

     

     


    저는 저렇게 하면 됬습니다. 혹시 하시다가 안 되시는 부분이 있다면. 물어봐주셔도 괜찮은데.. 저도 잘 몰라서 잘 대답을 해 드릴 수 있을지 모르겠습니다 .ㅠㅠ 

    '프로그래밍 및 IT > VS CODE' 카테고리의 다른 글

    vsCode Git에 올리기  (0) 2021.05.18
    VSCode 추천 Extentions  (0) 2021.05.12
    VS코드 ORACLE DB연동  (0) 2021.05.12
    vs코드 Jupyter Code1에러  (0) 2021.05.07

    목차

      vs 코드에서 이친구를 다운로드 해준다.

       

       

       

       

       

       

       

       

       

       

       

       

       

      그후  이래 링크를 클릭하시고 다운로드를 받아준다.

      dotnet.microsoft.com/download/dotnet/thank-you/runtime-3.1.12-windows-x64-installer

       

      Download .NET Core 3.1 Runtime (v3.1.12) - Windows x64 Installer

      Supported on Windows, Linux, and macOS Get Started

      dotnet.microsoft.com

       

       

      설치후 꼭 vs코드를 껏다 켜주자.. 그냥 F5버튼으로 새로고침하고 왜 안되지 라는 생각을 계속했네요..

       

       

      어쨋든 VS코드를 재시작하고, +버튼을 눌러주면 !! 아래와같이 커넥션이 생깁니다!! 드디어 성공 ㅠ.

       

       

      뭔가 각 값들에 어떤것을 넣어야할지 모르실 분이 있을 것 같아서 캡쳐해봅니다.

      위와같이 하시면 됩니다. 

      '프로그래밍 및 IT > VS CODE' 카테고리의 다른 글

      vsCode Git에 올리기  (0) 2021.05.18
      VSCode 추천 Extentions  (0) 2021.05.12
      vs Code git연동.  (0) 2021.05.12
      vs코드 Jupyter Code1에러  (0) 2021.05.07

      망할 에러

      원래는 jupyter notebook으로 하다가 vscode로 하고 싶어 져서 실행시켜보니 저런 에러가 떴다.

       

      우선은 찾아보니, conda install -c anaconda pywin32 를 이용하여 업데이트를 해줘라였다. 우선 실패했다.

       

      그렇게 찾아보다가 결국 해결을 했다. 

       

      필자의 원인은... 그냥 권한이 없었던 것이었다..

       

      만약 저와 같은 에러가 떴으면 권한을 한번 부여해보는 것도 좋을 것 같다.

      '프로그래밍 및 IT > VS CODE' 카테고리의 다른 글

      vsCode Git에 올리기  (0) 2021.05.18
      VSCode 추천 Extentions  (0) 2021.05.12
      vs Code git연동.  (0) 2021.05.12
      VS코드 ORACLE DB연동  (0) 2021.05.12

      목차

        저번에 도커를 설치하고, 이제는 도커에 오라클을 사용하기 위해 설치해보겠습니다.

         

         

        hub.docker.com/

         

        Docker Hub

        We and third parties use cookies or similar technologies ("Cookies") as described below to collect and process personal data, such as your IP address or browser information. You can learn more about how this site uses Cookies by reading our privacy policy

        hub.docker.com

         

         

        우선 여기에 들어가시면 Github 처럼 여러사람들이 올려둔 이미지 파일들을 보실 수 있습니다.  필요하신게 있으면 찾아서 사용하시면 되요 ㅎㅎ 저는 오라클사의 SQL+를 설치하고 싶어서  quillbuilduser님이 구성하신 이미지를 다운받았습니다.

         

        그래서 들어가 보시면 아래와 같이 나옵니다.

        그러면 저기 제가 동그라미 친부분에 있는 것을 클릭하시면 명령어가 복사됩니다.

        제가 사용한 것은 이미지파일은 quillbuilderuser이라는 닉네임을 가지신 분의 이미지파일을 받았습니다.

         

        docker pull quillbuilduser/oracle-18-xe

         

         

         

         

        이제 저는 이분이 구축하신 oracle DB(sql+) 의  18xe버전을 설치하는 과정을 작성해보겠습니다 ㅎ.

         

        우선 "Win + R" 혹은 검색을 통하여 cmd창을 켜주고 위 명령어를 삽입 후 설치합니다.(이때 도커는 켜놔주세요 ㅎ 처음에 안되길래 뭔가 하니 제 경우는 도커를 키지 않아서 그러더군요 ㅎ)

        그러면 갑자기 cmd가 여러개를 다운받기 시작합니다.

        그렇게 설치가 완료된다면, 

        저 친구가 생성이 될 것 입니다.

        설치가  완성된다면. 이제 디비 설치는 완료 된 것 입니다.

         

        github.com/deusaquilus/docker-oracle-xe

         

        deusaquilus/docker-oracle-xe

        Docker build for Oracle Database Express Edition (XE) - deusaquilus/docker-oracle-xe

        github.com

        이게 docker hub에 docker을 올려주신 분의 GitHub 주소입니다. 들어가 보시면 상세 설명은 되어있습니다. 

        위 사진이 기본 값입니다. ( 접속시에 위 로그인 정보로 로그인하세요 ㅎㅎ ) 

         

        저는 포트번호만 변경하였습니다.ㅎ 편하신데로 설정 하시고 실행하시면 됩니다. ㅎ

         

         

        저는 추가적으로 강사님의 docker hub에서 다운을 받아서, repository , library를 추가적으로 받았습니다.

         

        여쭤보니 올리셔도 된다하셔서 올려보겠습니다.

         

        docker pull mrsono0/boilerplate:library
        docker pull mrsono0/boilerplate:repository

        위 두줄을 오라클 설치시에 사용한 방법처럼 cmd에 적으시면 알아서 다운 받아지고, 설치가 될 것입니다.

         


        추가적으로 저는 명령어를 이용해서 새로 하였습니다.

         

        저는 편리하게 하기 위하여 "vs코드"를 설치하고 진행하였습니다.

        vs코드를 설치 후 Docker을 install하여 진행하였습니다.

         

        우선 yml파일이 있는 폴더를 지정하기위해 아래와 같이  Open Folder을 해 주었습니다.

         

        명령어 묶음을 한번에 실행하기 위하여 위와같은 yml를 생성하고, Compose Up을 이용하여 콘테이너를 생성하였습니다. 

         

        저기까지 하시면 아래와 같이 컨테이너에 생성되어 있을 것 입니다.

        강사님께서 주신것은 쥬피터를 설치 해 놓으셔서 Open in browser을 누르시면 인터넷 창이 열리시면서 쥬피터가 켜질 것입니다.

         

        결과는 이와같습니다.

         


        이제 기본준비는 끝났습니다.

         

        다음에 더 공부를 하고 새로운 정보가 있다면 올리겠습니다.

         

        제가 사용한 yml파일이 필요하신 분이 계실 것 같아서 강사님께 여줘보니 올려도 된다 하셔서  올려놓겠습니다.

         

        실행했던 명령어들

        더보기

        docker pull quillbuilduser/oracle-18-xe

        docker pull mrsono0/boilerplate:library

        docker pull mrsono0/boilerplate:repository

         

        yml파일. ( 다른 DB 혹은 다른 버전을 사용하시면 주석만 조금 바꾸시면 됩니다. )

        더보기
        version: "3.5"
        
        
        
        services:
        
          library:
        
            image: mrsono0/boilerplate:library
        
            container_name: sql_library
        
            tty: true
        
            volumes:
        
              - shared-volume:/share
        
        
        
          repository:
        
            image: mrsono0/boilerplate:repository
        
            container_name: sql
        
            tty: true
        
            volumes:
        
              - shared-volume:/share
        
            depends_on:
        
              - library
        
            ports:
        
              - "8888:8888"
        
            command:
        
              [
        
                sh,
        
                -c,
        
                "mkdir -p /usr/src/myapp && jupyter lab --notebook-dir=/usr/src/myapp --ip='*' --port=8888 --no-browser --allow-root --NotebookApp.token='' --NotebookApp.password=''",
        
              ]
        
        
        
          # mysqldb:
        
          #   image: mysql:5.7.34
        
          #   container_name: mysql
        
          #   ports:
        
          #     - "3306:3306"
        
          #   environment:
        
          #     MYSQL_ROOT_PASSWORD: "mysql"
        
          #     MYSQL_ROOT_HOST: "%"
        
        
        
          # oraclexe11g:
        
          #   # Password for SYS & SYSTEM : oracle
        
          #   image: mrsono0/boilerplate:oraxe11g
        
          #   container_name: oraxe11g
        
          #   ports:
        
          #     - "1521:1521"
        
          #   environment:
        
          #     ORACLE_ALLOW_REMOTE: "true"
        
          #     SGA_TARGET: "512M"
        
        
        
          oraxe18c:
        
            # https://github.com/oracle/db-sample-schemas/releases/tag/v19.2
        
            # https://github.com/deusaquilus/docker-oracle-xe
        
            # -- Connect to CDB
        
            # sqlcl sys/Oracle18@localhost:11521/XE as sysdba
        
            # -- Connect to default PDB
        
            # sqlcl sys/Oracle18@localhost:11521/XEPDB1 as sysdba
        
            # SCOTT / TIGER
        
            # hr / hr
        
            # image: mrsono0/boilerplate:oraxe18c
        
            image: quillbuilduser/oracle-18-xe
        
            # secretsysuser / secretpassword
        
            # aoo_tests / AOO_TESTS
        
            # image: diemobiliar/minimized-oraclexe-image
        
            container_name: oraxe18c
        
            ports: # 서버 포트 : 클라이언트 포트
        
              - "11521:1521" 
        
            environment:
        
              ORACLE_PWD: "Oracle18"
        
              ORACLE_ALLOW_REMOTE: "true"
        
              SGA_TARGET: "512M"
        
        
        
        volumes:
        
          shared-volume:
        
        

         

        '프로그래밍 및 IT > 도커 ( Docker )' 카테고리의 다른 글

        도커 설치 ( Docker )  (0) 2021.05.04

        목차

          함수

          함수 사용방법

          • 함수명(입력인수) : 사용하고자 하는 함수를 함수명으로 호출 후 인수가 필요한 함수일 경우 인수값을 사용

          수학함수와 python 함수의 비교

          • 수학함수 표현
          • f(x) = x + 1
          • pyhon에서 함수 정의[indent]수행문장
          • [indent]return 값
          • def 함수명(입력인수):
          • def : 함수를 지칭하는 키워드
          • 함수명 : 함수를 호출하기 위해 사용하는 명시적 변수
          • 입력인수 : 수학 함수식에서 f(x)표현시 함수에 사용되는 x값
          • return 값 : 함수를 수행 후 반환되는 값

          함수를 만드는 이유

          • 함수는 임의의 값을 받아 문장을 수행한 후 결과값을 출력하므로 함수를 이용하면 임의의 값에 대하여 재활용하기 위해 만든다.

          함수 모양

          def FuncName(var1, var2.. ) :

           """ 독스트링(Documentation String,Docstrings)"""  
          
           코드  
          
           return
          • def
          • : Define의 약자로써 선언한다는 의미를 가지고 있다.
          • funcName
          • : 함수의 이름이다.
          • var
            • 매개변수는 함수에서 선언한 개수와 호출시에 넣은 개수가 동일해야한다
          • : 인자값으로써 갯수는 여러개가 들어와도 상관이 없다.
          • 독스트링(Documentation String,Docstrings)
            • """......""" 이와 같이 """로 묶어서 사용한다.
            • 독스트링보다 위에 코드가 있으면 안된다. 즉, 함수의 첫째줄부터 작성되어야한다.
          • : 함수의 설명을 작성하는 것이다. (출력과는 무관하다, 주석같은 느낌이다.)
          • return
            • return 뒤에 값이 없다면 , 그냥 함수를 종료시킨다.
          • : return값이 없다면, 적지 않아도 무관하다.

          언패킹 이용하기

          • 리스트 혹은 튜플 앞에 ''를 삽입하여 사용한다.
            • 인자값이 여러개면 언패킹을 이용한다면 편하게 사용 할 수 있다.
              • 간단하게 리스트 혹은 튜플이 인자값과 1 : 1 맵핑이 된다고 생각하면된다.
              • 그럼으로 리스트 혹은 튜플의 길이가 인자값의 갯수와 동일해야한다.
              • Func(*리스트)
              • Func(*튜플)
            • 가변인수
              • def FuncName(*매개변수):
              • 코드
              • 가변인수 즉 길이가 변하는 리스트 혹은 튜플따위를 인자값으로 받을 때 사용한다.
              • 가변인수와 고정인수를 동시에 사용한다면, 고정인수, 가변인수 순으로 사용해야한다.
                • def FuncName(고정인수 , *가변인수):
            • 위치 인수
              • def FuncName(**매개변수):
              • 코드
              • Func(**딕셔너리)
              • *_를 두번 하는 이유는 *한번만 사용하면 key값을 반환하고, *_을 사용하면 value를 반환한다.
            • 초기값 설정
              • def FuncName(매개변수 = value) :
                • 위와같이 선언한다면, 매개변수의 Default 값이 value가 들어간다.
                • 초기값을 설정한 변수들의 순서는 뒤로가야한다.
                  • def FuncName(var1 , var2 = value): <- 가능
                  • def FuncName(var1 = value , var2): <- 불가능
          • *

          재귀함수

          • 정의
            • 함수가 자기자신을 다시 호출하는 것이다.
            • 생성시에 탈출조건을 잘 정해줘야한다.
              • 탈출조건을 잘못 설정하면 무한루프가 된다.(프로그램이 끝나지 않음)
          • 모양
            • def recursiveFunc() :
              코드  
          recursiveFunc()  

          람다식

          • 람다식 ( 익명 함수 ) 이란?
            • 함수를 간단히 식 형태로 되어있어 람다 표현식 ( lambda expression ) 이라고 부른다.
            • 즉 return문하나 만 있는 함수라고 생각하면 편하다.
            • 람다식 안에서 새로운 변수생성 은 불가하다.
              • 람다식 외부에 있는 변수는 사용할 수 있다.
            • 주로 함수의 인수로 넣을떄 사용한다.
            • 아래 함수와 람다식은 같은 기능을 처리한다.
          def plus(x):
              return x+1
          lambda x : x + 1

          결과값 : <function main.(x)>

          사용방법

          • lambda 매개변수 : 식
            • 람다식을 변수에 할당시키면 재사용이 가능하다
            • LambdaVar = Lambda(람다식)
          (lambda x : x +1)(1)

          결과값 : 2

          Sequence Type 사용하기

          • (lambda 매개변수 : 식)(인수들)
            • 변수에 할당하지 않고 바로 사용시에 사용한다.
            • 한줄 계산시에 많이 사용한다.
            • 만약 인수를 list와 같은 Sequence Types으로 받는다면, 각각에 값처리가 된다.
          print(list( map (plus,[1,2,3]))) # plus는 위에 함수로 선언함.
          print(list( map ( lambda x : x + 1 ,[1,2,3] ) ))

          결과값 : [2, 3, 4], [2, 3, 4]

          람다에 조건문 삽입하기

          • lambda 매개변수 : 식1 if 조건식 else 식2
            • 조건식이 True면 식1, False면 식2를 반환한다.
          • IF를 사용하였다면 반드시 ELSE를 사용해야한다
          nums = [1,2,3,4,5,6,7,8,9,10]
          list(map(lambda x : -1 if x % 2  else x , nums))

          결과값 : [-1, 2, -1, 4, -1, 6, -1, 8, -1, 10]

          조건문 안에 조건문 넣기

          • lambda 매개변수 : 식1 if 조건식1 else 식2 if 조건식2 else 식3
            • 조건식이 True면 식1, False면 식2를 반환한다.
          • 물론 이렇게 사용 할 수 있지만, 억지로 람다식을 구현한 느낌이다. 가독성이 떨어짐으로 Def를 이용하여 함수를 생성하여 사용하는 것을 권장한다.
          nums = [1,2,3,4,5,6,7,8,9,10]
          list(map(lambda x : '식1' if x % 3 == 0  else '식2' if x % 2== 0 else '식3' , nums))

          결과값 : ['식3', '식2', '식1', '식2', '식3', '식1', '식3', '식2', '식1', '식2']

          Map을 이용하여 Lambda사용하기

          • list(map(lambda x,y : x*y , 인자1,인자2)
          a = [1,2]
          b = [2,3]
          list(map(lambda x,y : x*y , a,b))

          결과값 : [2, 6]

          Filter을 이용하여 Lambda 사용하기

          • filter(함수, 반복가능한객체)
            • 함수가 True일 떄 객채를 가져온다.
          a = [1,2,3,4,5,6,7,8,9,10]
          list(filter(lambda x : x > 5 and x < 10 , a))

          결과값 : [6, 7, 8, 9]

          '프로그래밍 및 IT > 파이썬 ( Python )' 카테고리의 다른 글

          파이썬( 예외 처리 )_11  (0) 2021.05.14
          파이썬( 클래스 )_10  (0) 2021.05.12
          파이썬(파일 입출력)_08  (0) 2021.05.02
          파이썬(문자열)_07  (0) 2021.04.30
          파이썬(반복문)_06  (0) 2021.04.29

          www.docker.com/get-started

           

          Get Started with Docker | Docker

          Learn about the complete container solution provided by Docker. Find information for developers, IT operations, and business executives.

          www.docker.com

           

          우선 도커는 가상화 환경을 만들어주는 좋은 친구입니다.

           

          그런데 가상화가 되는 이라는 것은 컴퓨터가 가상화를 지원해야합니다.

           

          본인의 PC에서 가상화를 지원하지 않는다면 아쉽게 사용을 하지 못 하는 것으로 알고 있습니다.

          가상화 지원여부

          위와같이 작업관리자(ctrl + shift + esc ) ->  성능 -> cpu클릭 하시면 위와같이 볼 수 있습니다. 가상화가 "사용"이길 빌어봅시다.

           

          또 윈도우도 업데이트를 해줘야하는 것으로 알고있습니다. ( 앞자리가 20대인것 ) 

          윈도우 버전

          win + r 을 누르셔서 winver 검색하시면 위와같이 20으로 시작하지 않으시면 윈도우 업데이트를 하시면 될겁니다.

           

           

           

          필요하신 것을 설치해줍니다.

           

          설치하면서 회원가입도 해주세요 ㅎㅎ

           

           

          설치를 눌러주면 위와같이 열심히 알아서 무언가를 깔고 있습니다. 다깔고 나면 체크하는 것들이 나오는데, 그것들은 제가 까먹고 캡쳐를 안 했습니다.

          기억으로는 리눅스 컨테이너대신 윈도우 컨테이너 사용여부 정도 있던거 같은데 다 체크해주시면 됩니다.

           

           

          그러면 아마 wsl 2install 뭐시기 경고 문구가 나타날 것 입니다.

          거기서 시키는대로 순차적으로 진행시켜줍니다.

          저는  window powerShell을 관리자권한으로 실행하시고, 5단계 까지 진행하고, 재시작하고 도커를 실행하니 잘 놀랍게도 에러가 사라졌습니다. ( 캡쳐못한게 너무 슬프네요. 다시 지우고 할 수도 없고..ㅎㅎ 다음에 컴퓨터 포멧하면 캡쳐해서 올려보겠습니다. ) 

           

          업데이트를 다 하시면 위와 같이 하시면됩니다.

          이제 개인적으로 서버를 구축하셔도 되고  hub.docker.com/  에 들어가셔서 원하시는 os를 다운 받으셔서 사용하셔도 됩니다. 

           

          저도 이제 시작하는 것이여서 잘 아는게 없어서 많은 것을 포스팅하지 못 하네요.. 더 발전해서 올려보겠습니다.

           

           

          '프로그래밍 및 IT > 도커 ( Docker )' 카테고리의 다른 글

          도커 오라클 설치  (0) 2021.05.06

          + Recent posts