IT/리눅스 2021. 5. 28.
우분투 18.04 LTS 웹서버 Nginx 설치 및 서비스 등록
우분투 18.04 LTS 웹서버 Nginx 설치 및 서비스 등록도 별거 없다. 그냥 명령어 몇개로 웹서버를 간단하게는 바로 올릴 수 있다. nginx 설치 설치 로그로 대신하련다. twmini@twmini-ThinkCentre-M600:~$ sudo apt-get install nginx [sudo] twmini의 암호: 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다... 완료 다음의 추가 패키지가 설치될 것입니다 : libnginx-mod-http-geoip libnginx-mod-http-image-filter libnginx-mod-http-xslt-filter libnginx-mod-mail libnginx-mod-stream nginx-commo..
IT/파이썬 2021. 5. 24.
파이썬 리스트 삭제, clear
파이썬 리스트를 제거하는 방법이 여러가지 있네. 아이템을 지울때는 그냥 del, 전체 지울 때는 clear 를 쓰면 되겠다. 자세한 내용은 아래 글을 참고합시다. 고마운분들~~ https://ponyozzang.tistory.com/587 Python 리스트 값 삭제 clear, pop, remove, del 파이썬에서 리스트 형태에 저장된 값을 삭제하는 방법을 보겠습니다. 리스트에서 값을 삭제하기 위해서는 함수를 사용하거나 범위를 지정해 삭제할 수 있습니다. 종류 내용 clear() 모든 요 ponyozzang.tistory.com BJ. Engin Akyurt 님의 사진, 출처: Pexels
IT/파이썬 2021. 5. 20.
파이썬 - 함수 전달인수에 * 가 있다면 멀까?
아래 글 보다 더 잘 설명할 순 없다. 그냥 아래 글에 들어가셔용~~ https://sjquant.tistory.com/31?category=797018 파이썬에서 arguments로 *(별표)만 쓴 경우!? fastapi 의 코드를 보던 중 함수의 arguments 로 *만을 쓴 것을 발견했다. 난생 처음 본 표현법이라서 직접 테스트 해보며 뭔지 알아냈다. ...(생략) def get_param_sub_dependant( *, param: inspect.Parameter,.. sjquant.tistory.com *를 사용하면 *이후의 arguments들을 keyword arguments로 강제할 수 있다. 예를들어 아래와 같이 정의한 경우에는 recipient와 what을 positional argum..
IT/DB 2021. 5. 9.
MongoDB 관리자 계정 추가 권한 설정 방법 - db 쓰고 읽기
무엇이 이렇게 어렵다냐~~ 그냥 admin 권한을 주고 쓰도록만 해주자. 나중에 권한별로 사용자 관리를 다시 하더라도. 검색을 하다보니, 대부분 사용자 관리를 위한 admin을 설정하는 방법이 나와 있어서 실제 동작을 수행할 때 권한 오류가 나서 당황, 관리자 아이디, 패스워드 추가하기 그냥 쉽게 admin에 db, collection 을 읽고 쓸수 있는 권한을 줄 수 있도록만 설정해 보자. 관련글은 아래글 참고 https://bjcomm.co.kr/188?category=572933 [MongoDB] 관리자 계정 추가/삭제하기 처음 MongoDB를 설치하게되면 기본 계정은 존재하지 않고 생성해야 합니다. 또한 한 계정으로 여러 데이터베이스의 권한을 가질 수 없으며 1사용자 1데이터베이스 원칙이 기존 M..
IT/파이썬 2021. 5. 7.
jinja2 에서 문자열 변환 함수 - 파이썬 str() 함수 같은 것
요거요거 신경 쓰이게 많이 했다. 쉽다. 정답은 아주 쉽다. jinja2 에서 문자열로 바꾸려면 str() 이렇게 쓰는 게 아니라 {{ 변수 | str }} 혹은 {{ 변수 | string }} 으로 쓰면 된다. 이것 찾느라 고생이었다. 난 ObjectId 값을 바로 문자열과 비교하니깐 같은 값인데 같다고 안나오니 환장할 노릇. 알고 보니 ObjectId를 먼저 string 으로 바꾸고 비교해야 하네.. {% if pre_orderitem == (orderitem_from["id"] | string) %} 참조한 사이트는 바로 아래~~ webisfree.com/2019-02-06/jinja2%EC%97%90%EC%84%9C-%EC%88%AB%EC%9E%90-%EB%98%90%EB%8A%94-%EB%AC%..
IT/DB 2021. 4. 30.
MongoDB 백업하기 - mongodump
무슨 긴말이 필요할까? 그냥 성공한 명령어 저장 mongodump --out ~/저장디렉토리명 --host 127.0.0.1 --port 27017 -u 사용자명 -p 패스워드 --db 백업원하는DB명 --authenticationDatabase admin 딱 성공하면 아래처럼..저장디렉토리명 아래에 DB 이름으로 백업되어 있음을 볼 수 있다. 생각보다 파일 사이즈가 크네. 머 아무튼 성공 이제 복원해보러 가야지. 2021.03.18 - [IT/DB] - MongoDB 복원하기 - mongorestore MongoDB 복원하기 - mongorestore 백업 했으니 복원도 테스트 해봐야지 말이 필요없다. 성공한 내용은 아래와 같다. mongorestore --host 127.0.0.1 --port 270..
IT/IoT | Hardware 2021. 4. 27.
Raspberry Pi Pico + Ethernet 연결하기 4 - 속도측정 라즈베리파이 피코 W5500
파이썬 코드로 IoT 임베디드 보드 제어해 보기 프로젝트, 오늘은 속도를 측정하기 위해서는 기본적으로 라즈베리파이 피코 보드와 W5500 보드가 연결되어 Ethernet 환경을 쓸 준비가 되어 있어야 한다. (PC 파이썬과는 약간 제약이 있을 수 있다. Micropython, CircuitPython 키워드로 검색을 해 봐야 합니다. 임베디드 세계에서는 :) ) 1. 준비하기 기본적인 하드웨어, 기본 연결, CircuitPython 환경 설정, W5500 기본 드라이버, 동작 확인 등등은 아래 3개의 글을 참고하면 됩니다. :) 그래도 간략하게 먼저 CircuitPython 환경 만들기는 간단하게 한글로 가져오면, 1. 일단 아래 uf2 파일을 다운로드 한다. 아무곳에서 다운 받아도 된다. 개인 gith..
IT/IoT | Hardware 2021. 4. 27.
AX1 - WIZnet 위즈네트 TCP 속도 측정 툴
기능이 많이 있지는 않아도 연결해서 데이터 주고 받고, 속도를 측정해서 출력해주는 간단한 기능으로는 쓸 만 한 툴이다. 만든지 오래되어서 OS를 타는 지는 모르겠는데 내 Windows10 에서는 문제없이 돌아 간다. 설치 파일은 아래 링크를 참고하세요. AX1_AX2.zip (1.85 MB) 로컬 카피본으로 여기에 올려둔다. 간단하게 사용법은, 설치는 그냥 다음만 누르면 되고, 실행을 하면 아래와 같은 창이 실행된다. 그럼 먼저 CPU TICK이라는 것을 실행해서 속도를 잴 때 사용하는 틱 값을 세팅한다. 그럼 몇 초 있으면 아래와 같이 먼가 숫자가 적힌 창이 뜬다. 그냥 예하고 닫으면 된다. :) 그럼 이제 연결해서 속도를 간단하게 측정해 보자. 기본적으로 AX1 에서 먼저 데이터를 보내도록 되어 있고..
IT/IoT | Hardware 2021. 4. 19.
Raspberry Pi Pico + Ethernet 연결하기 3 - DHCP 라즈베리파이 피코 W5500
이제 소프트웨어 환경과 간단하게 Ping 테스트가 가능한 IoT 기기 비슷하게 만들어 보았다. 2021.04.19 - [IT/IoT | Hardware] - Raspberry Pi Pico + Ethernet 연결하기 1 - 라즈베리파이 피코 W5500 Raspberry Pi Pico + Ethernet 연결하기 1 - 라즈베리파이 피코 W5500 MicroPython vs CircuitPython for 이더넷 기능 Raspberry Pi Pico 보드에 Ethernet 기능을 추가하기 위해 위즈네트 W5500 칩을 연결해 보도록 하자. 마이크로 파이썬에서 제공하는 라이브러리가 있으면 더 좋은데. wiznxt.tistory.com 2021.04.19 - [IT/IoT | Hardware] - Raspb..
IT/IoT | Hardware 2021. 4. 19.
Raspberry Pi Pico + Ethernet 연결하기 2 - Ping 라즈베리파이 피코 W5500
이제 소프트웨어 환경은 Raspberry Pi Pico + Ethernet 연결하기 1 - 라즈베리파이 피코 W5500 에서 완성이 되었고, Raspberry Pi Pico W5500 Ethernet 하드웨어 연결 Raspberry Pi Pico 보드와 W5500 내장한 WIZ850io를 하드웨어 연결을 해야 한다. 라즈베리파이 피코 RP2040 보드의 핀아웃은 아래와 같다. (어디서 가져왔더라 ^^;;;) 위즈네트에서 생산하는 WIZ850io 의 핀 아웃은 아래와 같다. SPI1 을 이용하여 연결해 보자. 간단하게 연결도를 첨부한다. Fritzing 파일도 같이 첨부해 둔다. 필요한 사람 바꿔서 사용하시길 SPI1_SCK => WIZ850io SCLK SPI1_TX => WIZ850io MOSI SPI..
IT/IoT | Hardware 2021. 4. 19.
Raspberry Pi Pico + Ethernet 연결하기 1 - 환경설정 라즈베리파이 피코 W5500
라즈베리파이 피코 보드에 대한 설명은 다른 곳에도 많이 있네요. 라즈베리파이 MCU 버전, 아두이노와 유사한 플랫폼입니다. 더 자세한 설명은 아래글... RP2040 RaspberryPi Pico 간단히 알아보기 --> divenire.tistory.com/292 라즈베리파이의 첫번째 MCU, RP2040 및 라즈베리파이 피코 소개 오픈소스 하드웨어의 대표주자인 라즈베리파이는 최근까지도 AP의 빈약한 GPIO로 애플리케이션의 엔드포인트에 이렇다 할만한 개선점이 크게 없었습니다. 호환성을 위해 GPIO 핀맵을 고수한 점은 divenire.tistory.com MicroPython vs CircuitPython for 이더넷 기능 Raspberry Pi Pico 보드에 Ethernet 기능을 추가하기 위해 ..
IT/파이썬 2021. 4. 16.
예외를 직접 발생시키기 - raise Exception
설명 필요없고, 아래 글 참고. raise Exception 함수내에서 Exception 처리하면 함수 호출 한 곳에서는 Exception이 발생이 안되니까, 별도로 Exception 처리이후에도 호출 쪽에서 그 내용을 알아야 한다면 강제로 raise Exception을 이용해서 예외를 다시 전달해 주도록 하자. dojang.io/mod/page/view.php?id=2400 파이썬 코딩 도장: 38.3 예외 발생시키기 지금까지 숫자를 0으로 나눴을 때 에러, 리스트의 범위를 벗어난 인덱스에 접근했을 때 에러 등 파이썬에서 정해진 예외만 처리했습니다. 이번에는 우리가 직접 예외를 발생시켜 보겠습니다. 예 dojang.io def three_multiple(): x = int(input('3의 배수를 입력..