Nornir 네트워크 자동화 – 1 (기초편) 1. Nornir란 무엇인가? Nornir는 파이썬으로 작성된 자동화 프레임워크다. Ansible의 경우 파이썬으로 작성되었지만 프로그래밍을 몰라도 사용하는데 문제는 없지만, Nornir를 사용하려면 파이썬 프로그래밍을 알아야한다. Nornir는 파이썬 버전 3.6.2 이상에서 동작한다. 2. Nornir 설치 Nornir는 PyPI에 게시되며, 다른 파이썬 패키지들처럼 pip 명령으로 설치가 가능하다. 또한 개발단계에서는 virtual environment를 사용하는것이 좋다. 아래 명령으로 …
Category: Python/Django
1월 06
ip 주소를 숫자로 바꾸기 – python ipaddress 모듈.
ip 주소 정렬 문제 ip 주소를 정렬하려고 하면 자릿 수 때문에 원하는 결과가 나오지 않는다. 172.16.10.10 172.16.1.100 172.16.1.1 172.16.1.9 172.16.1.11 172.16.11.100 172.26.11.10 이 내용을 엑셀을 이용하여(또는 리눅스 sort 명령을 이용하여) 정렬하면, 172.16.1.1 172.16.1.100 172.16.1.11 172.16.1.9 172.16.10.10 172.16.11.100 172.26.11.10 처럼, 원하는 결과가 나오지 않는다.
10월 08 2020
django Mongodb connector 설정하기
Django mongodb connector 설정하기 참고문서: https://nesdis.github.io/djongo/get-started/ 사전작업: mongodb 설치, django3.1 설치. 1. django-mongodb connector(djongo) 설치. pip 로 django를 설치하면 아래처럼 몇몇 패키지들은 제거되고 django3.0.5가 설치된다. django 3.1버전이 지원되지 않아서 그런듯 하다. pip install django Collecting django Using cached https://files.pythonhosted.org/packages/2b/5a/4bd5624546912082a1bd2709d0edc0685f5c7827a278d806a20cf6adea28/Django-3.1-py3-none-any.whl Collecting pytz (from django) Using cached https://files.pythonhosted.org/packages/4f/a4/879454d49688e2fad93e59d7d4efda580b783c745fd2ec2a3adf87b0808d/pytz-2020.1-py2.py3-none-any.whl Collecting sqlparse>=0.2.2 (from django) Using cached https://files.pythonhosted.org/packages/85/ee/6e821932f413a5c4b76be9c5936e313e4fc626b33f16e027866e1d60f588/sqlparse-0.3.1-py2.py3-none-any.whl Collecting asgiref~=3.2.10 …
10월 06 2020
Python Tibero odbc
현 시점에, Django가 티베로 odbc를 지원하지 않기때문에, 프로그래밍할때 ORM 사용은 불가능하다. 때문에, 아래와 같은 클래스를 만들어서 사용했다. 티베로 ODBC설정은 Ubuntu+Tibero+Python3+ODBC 연결하기를 참고하면 된다. insert, delete 문은 execute 메소드를 사용하면되며, 결과값이 있는 쿼리는 query나 fetchone, fetchall 메소드를 사용하면된다. 윈도우 환경에서는 setdecoding 관련 부분이 필요 없지만, 리눅스 환경에서는 꼭 필요하다. # Use to Tibero database from ODBC. …
8월 23
Django 다국어 사용
django 3.1 다국어 사용 * 확인사항: django에서 다국어지원을 위해서는 os에 gettext가 설치되어 있어야 한다. django에서 다국어 지원을 위해 settings.py에 아래 내용을 추가해야 한다. cat project/settins.py from django.utils.translation import ugettext_lazy as _ … MIDDLEWARE = [ … ‘django.middleware.locale.LocaleMiddleware’, … ] # adding for i18n LANGUAGES =[ (‘ko’, _(‘Korean’)), (‘en’, _(‘English’)), # (‘zh-CN’, _(‘Simplified Chinese’)), ] LOCALE_PATHS …
8월 12 2020
Ubuntu+Tibero+Python3+ODBC 연결하기
Ubuntu 18.04에서 python3과 tibero 데이타베이스 연동하기 Tibero는 python 드라이버를 지원하지 않으므로, ODBC를 통해서 연결해야한다. 우분투리눅스에 ODBC를 아래 명령어로 설치한다. # sudo apt install build-essential # sudo apt install libssl-dev python3-dev # sudo apt install unixodbc unixodbc-dev tibero odbc 드라이버를 설치하려면 tibero client를 설치해야하지만, 티베로 데이타베이스서버에서 아래 파일만 복사하여 사용할 수도 있다. 여기서는 tibero 서버에서 libtbodbc.so …
6월 26 2020
[django recipe] django admin 페이지 변경하기.
django 버전: 2.0 이상 1. 로그인 페이지 변경. django admin 페이지에 로그인 하려고 하면 아래처럼 ‘Django 관리’ 라는 이름으로 로그인 화면을 보여준다. 이것을 원하는 이름으로 변경하려면, project/urls.py 에 admin.site.site_header 를 설정하여 변경 할 수 있다. … admin.site.site_header = ‘내프로젝트이름으로…’ 위 내용을 추가하고 로그인 페이지를 보면,
6월 24 2020
[django recipe] django-adminlte3 적용시 logout 문제.
django-adminlte3을 관리자 페이지에 적용했을때, 아래 그림처럼 로그아웃 url을 찾지 못하는 문제가 발생했다. 로그아웃 링크가 /logout/으로 되어 있는 문제인데, django-adminlte 테마를 적용하지 않으면 정상적으로 로그아웃 된다.
5월 21 2020
Ubuntu 리눅스에 Django 어플리케이션 배포하기(Nginx+Django+uWSGI)
Ubuntu 리눅스에 Django 어플리케이션 배포하기(Nginx+Django+uWSGI) * 작업환경 OS: ubuntu 20.04 LTS Python: Python 3.8.2 uwsgi : 2.0.18 Django: 3.0.6 Nginx : 1.17.10 1. 준비작업(Django project 만들고 django app 만들기 – 배포 테스트용) virtualenv 로 간단한 프로젝트를 만든다. virtualenv 가 없으면, 아래 명령어로 설치한다. $ sudo apt install python3-virtualenv python 가상환경을 만들고 django를 설치한다. snowfox@ubuntu:~$ virtualenv …
3월 22 2020
[Django Recipe] django-import-export 관리자페이지 적용.
django-import-export 관리자 페이지 적용하기. django-import-export는 csv, xlsx 등의 파일을 읽어 데이타베이스에 저장하거나, 데이타베이스의 내용을 csv, xlsx등의 파일로 저장하는 기능을 제공한다. 지원되는 파일 포맷은 tablib 가 지원하는 형식이며, tablib는 Excel, JSON, YAML, HTML, Jira, TSV, ODS, CSV, DBF를 지원한다. 1. 설치 pip install django-import-export 2. 설정 project/settings.py 에 아래 내용 추가 INSTALLED_APPS = [ … ‘import_export’, …