제가 싱가폴에 도착한 날은 2020년 1월 20일 입니다. 그리고 바로 코로나가 터졌지요. 지금은 2021년 2월 13일 설 연휴 기간 입니다. '제 개발자 싱가폴로 이직하기' 시리즈는 이 글이 마지막이 되겠지 싶습니다. 제가 한국에 다시 돌아온 것은 2020년 5월 20일 입니다. 싱가폴에서 집까지 구해서 살다가 코로나 때문에 싱가폴의 마트를 제외한 모든것들이 셧다운 되어서 할 수 있는 것이 없었습니다. 7월까지 6개월간 등록 했던 어학원도 2달만 오프라인 수업을 듣고 2달은 잘 되지도 않는 인터넷 강의로 들어야 했고 할 수 있는게 없어서 다시 한국으로 돌아온 것이 5월 20일 입니다. 학원비도 환불이 안된다고 했습니다. 한국에 오자마자 2주 격리를 했고 2주격리 후에는 알고 지내던 선배님의 소개로 6..
Python을 하다보면 디렉토리까지 구분하면서 파일을 만들어야 할 때가 있습니다. 예를들면 경매 낙찰 가격 데이터를 매일 수집해서 저장 할 때 날짜별로 디렉토리를 만들고 각 품목 ID별로도 디렉토리를 만드는 경우가 그렇겠습니다. 날짜는 매일 바뀌기 때문에 디렉토리도 매일 만들어 주어야 합니다. 그래서 디렉토리를 만드는 기능을 만들어 놓아야 매일 수동으로 하지 않아도 되겠지요? 하위디렉토리까지 생성하기 os.makedirs() os.makedirs()를 이용하면 하위 디렉토리까지 한번에 만들 수 있습니다. import os path = '/etc/level1/level2/hello.txt' os.makedirs(path) 결과 경로, 파일명 분리하기 os.path.split() 위 코드에서는 원래 hell..
개요 Flask로 페이지를 만들 때 parameter를 1개 또는 여러개를 넘겨서 호출할 일이 있어서 이 포스트를 정리 해봅니다. 1개 넘기기 {{"ns-abc-def"}} 위 url_for()함수를 쓰게 되면 아래와 같은 get요청을 만들어 줍니다. http://localhost:8082/home?namespace=20210517 2개 넘기기 {{"click"}} 1개 넘기는 것이랑 2개 이상 넘길 때 쓰는 방식은 ,로 구분해서 넘겨주면 됩니다. 1개 받기 @app.route('/home') def home(): ns = request.args.get('namespace', default = 'ns-abc-aaa', type = str) print(ns) return render_template('ho..
print(os.getenv('my_name')) 위 코드를 바로 실행 하면 None이 출력 됩니다. 소스코드에 Environment variable을 참조한 코드가 있는 경우 이 값을 넣어주어야 할때가 있습니다. 그럴 때 아래와 같이 합니다. os.environ['my_name'] = 'kyeongrok' 그리고 다시 값을 불러 와보면 print(os.getenv('my_name')) Kyeongrok 이라고 출력이 됩니다. argparse이용해 env variable받기 color라는 key로 색을 받고 싶은 경우 아래와 같이 쓸 수 있습니다. arg_test.py import argparse parser = argparse.ArgumentParser() parser.add_argument('--co..
백엔드 개발을 하다보면 linux 환경에서 shell script나 python code등을 작성해야 할 때가 있습니다. 물론 로컬의 Pycharm이나 VSCode 등을 쓰면 좋겠지만 보안상의 이유로 서버에서만 작업해야 하는 등 어쩔 수 없이 vim을 쓰게 되는 경우가 많습니다. 그래서 점점 ide에서도 vim플러그인을 깔아서 하루 종일 vim으로 코딩을 하게 되다보니 가끔 vim에디터가 아닌 다른 에디터를 써야 할 때 vim이 얼마나 좋은지 새삼 느끼게 되는 경우가 있습니다. 커서 이동 vim에 익숙해지면 커서 이동 할 때 여러번 누르거나 누르고 있는게 귀찮아집니다. 예를 들면 메모장에서 메모를 할 때 위와 같은 상황에서 ------------ 이렇게 줄을 넣고 싶을 때 두가지 선택이 있습니다. ---..
개요 Dockerfile과는 별개로 FROM 절에 바꿔주고 싶은 값이 2개 이상일 때가 있습니다. 예를들면 아래와 같이 HOST도 바꿔주고 싶고 버젼도 동적으로 바꿔주고 싶을때 입니다. FROM gcr.io/nginx:1.1 위 FROM절에서 gcr.io를 hello.world 등으로 동적으로 바꾸고 싶을 때가 있습니다. docker build -t gcr.io/nginx -f Dockerfile --build-arg REPO_HOST="hello.world" --build-arg VERSION="1.1" 그럴 때 위 명령어로 빌드를 하고 Dockerfile에는 ARG를 선언 해줍니다. 특이한점으로는 변수마다 --build-arg를 붙여주어야 한다는 것입니다. Dockerfile ARG REPO_HOST..
개요 Jenkins를 이용하다보면 특정 parameter에 따라 빌드 방법을 다르게 해야 할 때가 있습니다. 그때 when을 이용합니다. if문을 검색 해보았지만 신통치 않아서 when을 이용하게 되었습니다. 우리가 이용하는 if문과 when은 구조가 조금 다르지만 조건에 따라 실행되고 실행 안된다는 기능을 구현 할 수 있습니다. pipeline { agent any environment{ ENV = "prd" } stages { stage('Hello') { when{ environment name:"ENV", value:"dev" } steps { echo 'This is dev.' } } stage('Bye') { when{ environment name:"ENV", value:"prd" } ste..
Jenkins 프로젝트를 이전 포스트에서 만들었기 때문에 이전 포스트에 이어서 가보겠습니다. Parameter 왜 쓸까요? 빌드를 하다보면 여러가지 변경을 주면서 빌드를 해야 할 때가 있습니다. 예를 들어 해당 app이 dev용인지 prd용인지에 따라서 빌드하는 내용이 달라질 수 있습니다. 또한 Python의 버젼을 3.7.9로 할지 3.6.9로 할지 등이 바뀌는 경우 매번 코드를 수정하고 다시 배포해야 하는 등 빌드할 때 변화를 주어야 하는 경우가 있습니다. 이 경우에 Parameter를 이용하면 소스코드를 수정하지 않고도 변화를 줄 수 있습니다. 그러면 Build할 때 Parameter를 추가 해보겠습니다. 시나리오는 파이썬 버젼이 바뀌는 시나리오 입니다. 좌측 메뉴 'Configure'로 가봅니다...
개요 Jenkins Project를 만든다는 것은 빌드의 시작부터 끝까지를 만든다는 것입니다. 예를들어 app을 빌드해서 배포한다고 했을 때 개발이 완료된 코드를 git에 올려 놓는 것까지가 개발이고 git에서 pull을 해서 build한 후 배포까지 하는 것이 하나의 Jenkins Project가 하는 일입니다. 빌드 노드 jenkins를 설치 하면 빌드를 하는 Built-In Node가 하나 생성이 됩니다. 이 노드에서 빌드 작업이 실행되게 됩니다. Jenkins에서 파이프라인 프로젝트를 만들어 보겠습니다. New Item을 누릅니다. Pipeline을 선택하고 프로젝트의 이름을 입력 합니다. 저는 a_app_build_and_deploy 로 했습니다. a_app이라는 앱을 배포한다는 시나리오 입니다..
plugin에서 vim을 검색 한 후 위 플러그인을 설치 해줍니다. vscode를 재시작 합니다. settings에서 vimrc를 검색한후 Vimrc: Enable에 check해줍니다. VSCode와 Vim충돌하는 키 disable하기 ctrl + w, ctrl + d는 제가 vscode에서 사용하는 기능입니다. 그래서 vim에서는 이 키가 작동 안하게 바꾸고 싶어서 위 옵션에서 바꿔줍니다. vim.handle이라고 검색 하시면 위와 같이 settings.json을 편집할 수 있는 ui로 이동할 수 있습니다. 저는 위와 같이 설정 해주었습니다. terminal, output으로 focus가는 short cut 설정 terminal로 가는 short cut설을 하고 싶을때가 있습니다. ctrl + shif..
- Total
- Today
- Yesterday
- Sh
- docker container case
- docker container whale
- 도커각티슈케이스
- 싱가폴
- 도커티슈케이스
- vim
- 이직
- docker container
- 도커각티슈박스
- Linux
- 개발자
- 2017 티스토리 결산
- docker container tissue box
- 도커컨테이너
- 도커티슈박스
- shellscript
- docker container tissue
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |