728x90
반응형

서버 자원 관리 방법에 대한 용어에 대해  알아 보겠습니다. 

클라우드 환경에서 자주 접하는 용어로 ,클라우드 

스케일 업(Sacle-Up) ? 

스케일 업이란 동일 서버의 용량을 증설 하는 목적에 있습니다. 

서버 스펙 업그레이드라고 볼수 있다.

기존 8G 메모리, 1T 하드디스크로 서버가 구성되었다고 한다면 메모리: 8G-> 16G, 하드디스크 1T-> 10T 로 하드웨어 사양을 업그레이드 하는것을 스케일 업이라고하며 ,서버의 사양을 높이는 것이기 때문에 수직 스케일링(vertical scaling) 이라고도 한다.

scale-up

 

스케일 아웃(Scale-Out) ? 

서버의 자원 사용량이 부족하여 비슷한 사양의 서버를 추가하는 작업을 말한다.

하나의 장비에서 서비스를 처리함에 있어 한계에 부딪힐 경우 비슷한 스펙의 서버를 추가함으로 서버의 부하를 분산하는데 목적이 있다.

 

scale-out

스케일 인(Scale-In) ?

스케일 아웃과 반대되는  개념으로서 스케일 인 작업은 서버 용량 부족으로 늘렸던 자원을 다시 회수 하는 작업을 의미한다. 서비스 사용량이 줄어 늘려놓았던 불필요한 서버 자원을 해제 하는 작업을 의미한다. 

scale-in

오토스케일(Auto-Scale)?

서비스 사용량에 따라서 스케일 인/ 스케일 아웃 작업을 알아서 자동으로 해주는 작업을 말합니다. 

 

728x90
반응형

'IT지식' 카테고리의 다른 글

[Mkdocs] Mkdocs 설치 및 사용 방법  (0) 2025.01.14
쉘스크립트  (0) 2024.11.08
[IT지식] REST FUL 이란?  (0) 2022.06.04
728x90
반응형

이번글에서는 STS(eclipse IDE) 개발환경에서 gitlab 에서 만든 프로젝트와 소스 연동하는 방법에 대해 알아보겠습니다. 

 

Git Repository 주소 복사 

  • gitlab 프로젝트에서 clone 버튼을 눌러서 주소를 복사합니다. 

 

STS 프로젝트 git repository 연동 

  1. 오른쪽 상단 git 버튼을 눌러서 Git Repositoryies 메뉴로 들어갑니다.
  2. Clone a Git repository 버튼을 누릅니다. 
  3. gitlab 에서 주소를 복사하셨다면 빨간 박스 이외 값들은 자동으로 채워지게 됩니다. 
  4. 프로 젝트 계정의 유저와 비밀번호를 누른 후 Next 버튼을 클릭합니다. 

gitlab repository 정보 입력

  • 완료 버튼을 누르면 gitlab 의 레파지토리가 STS 와의 연동이 활성화 됩니다. 

STS 프로젝트 소스 연동 

  • Team ->Share Project ->repository (book)선택
  • Team->Add to Index
  • Team->commit

 

아래 그림을 보며 천천히 따라가 보세요 금세 연동이 가능 합니다. 

프로젝트  우 클릭후 Team->Share Project 버튼을 클릭합니다. 

등록한 repository 를 선택후 완료 버튼을 클릭합니다. 

 

share project 선택
repository 선택

프로젝트로 다시 돌아오면 ? 표시로 바뀌어 있습니다.

프로젝트 우클릭후 Team->Add to Index 버튼을 클릭합니다.

이후 프로젝트 우클릭후 Commit 버튼 클릭하면 gitlab 저장소에 소스가 업로드 된다. 

 

gitlab 프로젝트 소스 커밋 확인 

  • gitlab 에 접속 해서 프로젝트 확인시 소스가 업로드 된것을 확인할수 있다. 

 

 

728x90
반응형
728x90
반응형

 

 

Gitlab 사용시 자주 사용하는 다양한 명령어 사용법에 대해 작성한 글입니다. 

 

Gitlab 버전 정보 확인

gitlab-rake gitlab:env:info

gitlab 서비스 상태 확인 

gitlab-ctl status
root@ubuntu2004:/var/log# gitlab-ctl status
run: alertmanager: (pid 1473216) 7764s; run: log: (pid 1440782) 14293s
run: gitaly: (pid 1442283) 14000s; run: log: (pid 1438105) 14970s
run: gitlab-exporter: (pid 1473228) 7764s; run: log: (pid 1440657) 14312s
run: gitlab-kas: (pid 1473230) 7764s; run: log: (pid 1438363) 14948s
run: gitlab-workhorse: (pid 1473241) 7763s; run: log: (pid 1438889) 14659s
run: grafana: (pid 1473251) 7763s; run: log: (pid 1441383) 14201s
run: logrotate: (pid 1493932) 562s; run: log: (pid 1438049) 14982s
run: nginx: (pid 1473268) 7762s; run: log: (pid 1438932) 14648s
run: node-exporter: (pid 1473276) 7762s; run: log: (pid 1440636) 14315s
run: postgres-exporter: (pid 1473282) 7761s; run: log: (pid 1440816) 14287s
run: postgresql: (pid 1442385) 13995s; run: log: (pid 1438227) 14959s
run: prometheus: (pid 1473290) 7761s; run: log: (pid 1440757) 14298s
run: puma: (pid 1473300) 7760s; run: log: (pid 1438854) 14671s
run: redis: (pid 1442415) 13994s; run: log: (pid 1438068) 14976s
run: redis-exporter: (pid 1473306) 7760s; run: log: (pid 1440682) 14303s
run: sidekiq: (pid 1473315) 7759s; run: log: (pid 1438872) 14665s

Gitlab Log 확인

gitlab 사용시 로그 확인 방법에 대해 알아봅니다. 

gitlab 웹 로그 확인 

/var/log/gitlab/gitlab-rails/production.log  에 로그가 남습니다. tail 로 실시간 로그를 확인 할수 있습니다. 

tail -f  /var/log/gitlab/gitlab-rails/production.log

 

root@ubuntu2004:~# tail -f  /var/log/gitlab/gitlab-rails/production.log
Completed 200 OK in 34ms (Views: 0.5ms | ActiveRecord: 0.0ms | Elasticsearch: 0.0ms | Allocations: 814)
Started GET "/api/v4/geo/proxy" for 127.0.0.1 at 2022-04-16 12:36:37 +0900
Started GET "/-/metrics" for 127.0.0.1 at 2022-04-16 12:36:44 +0900
Processing by MetricsController#index as HTML
Completed 200 OK in 33ms (Views: 0.4ms | ActiveRecord: 0.0ms | Elasticsearch: 0.0ms | Allocations: 814)
Started GET "/api/v4/geo/proxy" for 127.0.0.1 at 2022-04-16 12:36:47 +0900
Started GET "/api/v4/geo/proxy" for 127.0.0.1 at 2022-04-16 12:36:57 +0900
Started GET "/-/metrics" for 127.0.0.1 at 2022-04-16 12:36:59 +0900
Processing by MetricsController#index as HTML
Completed 200 OK in 32ms (Views: 0.4ms | ActiveRecord: 0.0ms | Elasticsearch: 0.0ms | Allocations: 814)
Started GET "/api/v4/geo/proxy" for 127.0.0.1 at 2022-04-16 12:37:07 +0900
Started GET "/-/metrics" for 127.0.0.1 at 2022-04-16 12:37:14 +0900
Processing by MetricsController#index as HTML
Completed 200 OK in 36ms (Views: 0.5ms | ActiveRecord: 0.0ms | Elasticsearch: 0.0ms | Allocations: 814)

 

gitlab 서비스 로그 확인 

gitlab-ctl tail 명령을 통해  gitlab 서버에서 남기는 각종 로그를 확인할수 있습니다. 

  • gitlab-ctl tail [service 명]
  • 서비스명은 gitlab-ctl status 로 확인되는 서비스명입니다. 
gitlab-ctl tail
gitlab-ctl tail postgresql
gitlab-ctl tail ngix

gitlab-ctl tail

gitlab url 변경 방법 

  • 현재 저장소를 확인하고 변경된 주소로 지정 합니다. 
git remote -v 

git remote set-url origin https://gitlab.com/your-new-repo.git

 

 

728x90
반응형
728x90
반응형

깃랩의 기본 사용 방법에 대해 알아보겠습니다. 

GitLab 그룹 만들기 

  • + 버튼 클릭후 New group 버튼을 클릭 합니다. 

  • Create group 을 선택 합니다. 

group 생성 화면이 나오면 group name 을  작성 합니다. 

그룹 접근 권한을 설정 설정합니다. 

Visibility Level 

  • Private :프로젝트 그룹 권한이 있는 유저만 접근 가능 합니다. 
  • Internal:Gilab 사용자 모두 접근 가능 합니다. 
  • Public : 접속 계정이 없어도 모두 사용 가능 합니다. 

Inviate another member

  • 작업을 함께할 유처를 초대합니다. 

 

위와 같이 기본 설정을 마치면 아래 화면 처럼 devOpsmini 로 그룹 이 생성 됩니다. 

gitlab group 생성 완료

GitLab User 만들기 

1.일반 사용자 계정 생성

gitlab user 유저를 등록 하기 위해서는 회원? 가입 철차가 필요 합니다. 

Register now 버튼을 누른후 사용자 계정을 만듭니다. 

gitlab 유저 계정 생성

2.Admin 계정에서 일반 사용자 접속 허용 

gitlab 계정에 등록만 해서는 일반유저가 gitlab 에 접속 할수 없습니다. 

Admin 계정에서 유저 계정에 대한 접속을 승인해주어야 합니다. 

gitlab Memu 버튼 클릭후 Admin 계정에서 일반 유저 생성 계정 접속을 허용해 줍니다. 

  • Admin(root)계정 접속 
  • Menu ->Admin 클릭 
  • Users 매뉴 클릭 후 등록된 사용자 접속 허용 처리 

gitlab admin 설정
접속 승인 화면
접속 승인 완료 처리 화면

3.일반 계정 재 접속 진행 

admin(root) 계정에 일반 유저 접속 허용 승인처리가 완료 되었다면 

일제 일반 유저 계정 으로 접속이 가능 합니다. 

 

 

4.Admin 계정에서 유저 계정생성 

User 접속 승인 화면을 유심히 보셨다면 파란색 New user 버튼을 보셨을 겁니다. 

해당 버튼을 클릭해서 유저를 만들수  있습니다. 

신규 생성된 유저의 비밀번호는 초기 비밀번호로 셋팅이 되고 

최초 접속시 사용할수 있습니다. 

추후 변경 하면 됩니다. 

 

GitLab 프로젝트 만들기 

테스할 목적으로 프로젝트를 만들어 보겠습니다. 

저는 게시판 개발 목적의 프로젝트를 만들어 보겠습니다. 

 

  • Create project ->Create blank project 

  • 프로젝트 명을 입력하고 프로젝트 접근 허용 범위를 설정 합니다. 

gitlab create project

sts-board 라는  이름으로 신규 프로젝트가 생성이 되었습니다. 

이제 개발하고 소스를 관리할 저장소가 생겼습니다. 

clone 버튼을 눌러서 git 레파지토리를 확인하세요 

추후 이클립스와 같은 개발 환경에서 git repository 와 연동 하시면 됩니다. 

728x90
반응형
728x90
반응형

STS 란 ?

STS 란 Spring Tool Suit 약어 이며 , Spring FrameWork 을 지원하기 위해 최적화 된 IDE 개발 툴입니다. 
기존에 이클립스(Eclipse) 기반 환경에서 웹서비스를 개발 하기 위해서는 개발에 필요한 여러가지 필수 플러그인을 별도로 설치해야 했습니다. 
STS 는 Eclipse 환경에서는 기본 설치 되지 않은 내장 톰켓 서버나 , 빌드툴( gradle,maven) ,git 등이 기본으로 플러그인에 포함되어있어 보다 쉽고 간편하게 웹서비스를 개발 할수 있도록 도와주는 고마운 툴입니다. 

 

 

STS 다운로드

필자는 우분투 환경이라 리눅스 버전을 다운로드 받아 설치 하는 방법에 대해 소개 하겠습니다. 

  1. spring.io 사이트에서 리눅스 버전을 다운로드 받습니다. 
  2. 다운로드 받은 파일을 압축 해제 합니다. 
tar xvzf spring-tool-suite-4-4.14.0.RELEASE-e4.23.0-linux.gtk.x86_64.tar.gz​


https://spring.io/tools

 

Spring Tools 4 is the next generation of Spring tooling

Largely rebuilt from scratch, Spring Tools 4 provides world-class support for developing Spring-based enterprise applications, whether you prefer Eclipse, Visual Studio Code, or Theia IDE.

spring.io

STS download

STS 실행 

 

  • ./SpringToolSuite4 실행

dev@ubuntu2004:~/STS/sts-4.14.0.RELEASE$ ll
합계 1328
drwxr-xr-x  9 dev dev   4096  3월 14 01:20 ./
drwxrwxr-x  3 dev dev   4096  4월 16 22:32 ../
-rw-r--r--  1 dev dev     61  3월  9 01:22 .eclipseproduct
drwxr-xr-x  2 dev dev   4096  3월 14 01:18 META-INF/
-rwxr-xr-x  1 dev dev  86328  3월 14 01:16 SpringToolSuite4*
-rw-r--r--  1 dev dev    681  3월 14 01:20 SpringToolSuite4.ini
-rw-r--r--  1 dev dev 160278  3월 14 01:20 artifacts.xml
drwxr-xr-x  5 dev dev   4096  3월 14 01:18 configuration/
drwxr-xr-x  2 dev dev   4096  3월 14 01:18 dropins/
drwxr-xr-x 72 dev dev  12288  3월 14 01:20 features/
-rwxr-xr-x  1 dev dev 136129  3월 14 01:16 icon.xpm*
-rw-r--r--  1 dev dev  11522  3월 14 01:12 license.txt
-rw-r--r--  1 dev dev 845709  3월 14 01:20 open-source-licenses.txt
drwxr-xr-x  5 dev dev   4096  3월 14 01:19 p2/
drwxr-xr-x 24 dev dev  53248  3월 14 01:20 plugins/
drwxr-xr-x  2 dev dev   4096  3월 14 01:18 readme/

 

 

728x90
반응형
728x90
반응형

GitLab 설치 버전 확인 

Ubuntu 20.04.4 LTS 버전에서 에서 GitLab 설치하는 방법에 대해 알아보겠습니다. 

설치는 우분투 공식 홈페이지 자료를 이용해 설치 하는 내용을 담아 보겠습니다. 

우분투 GiltLab 설치 가이드 (공식)

 

GitLab 는 EE(Enterprise Edition)  버전과 CE(Community Edition) 버전은로 나뉘는데 EE 버전은 30일 무료 사용후 유료 정책으로 전환 된다고 합니다. 

 

다만 30일 이후 유료로 전환 하지 않으면 CE 버전으로 자동 전환 된다고 합니다. 

그래서 저는 그냥 EE 버전을 사용해서 30일 이후 CE 버전으로 변경되는지 확인해 보겠습니다. 

 

GitLab  라이센스 쟁책

  • GitLab CE : Core (무료)
  • GitLab EE : Core ->STARTER ->  PREMIUM ->  ULTIMATE

GitLab-ee 설치

GitLab-ee 버전 설치하는 방법에 대해 자세히 알아보겠습니다. 

잘따라오시면 쉽게 설치가 가능 합니다. 

1.GitLab dependencies 팩키지 설치 

sudo apt-get update
sudo apt-get upgrade -y

sudo apt-get install -y curl openssh-server ca-certificates tzdata perl

sudo apt-get install -y postfix

 

2.GitLab 팩키지 레파지토리 추가 및 설치

  • gitlab 레파지토리 추가
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
  • gitlab  설치
sudo apt-get install gitlab-ee

3.GitLab 환경파일 수정 (gitlab.rb)

/etc/gitlab/gitlab.rb 파일을 열어서 external_url 을 변경 합니다. 

해당 url 은 웹에서 접속할 URL 설정입니다. 

  • external_url 'http://116.121.154.196:6060'

4.GitLab 환경 파일 적용 및 상태 확인 

gitlab-ctl reconfigure 명령을 통해 환경파일을 재구성 하고 Gitlab 을 재시작 합니다. 

/etc/gitlab/gitlab.rb 파일이 변경 되었다면 gitlab-ctl reconfigure 명령을 수행해야만 적용이 됩니다. 

  • gitlab-ctl reconfigure :gitlab 변경 파일 재구성및 재기동 
  • gitlab-ctl stop :gitlab 중지
  • gitlab-ctl start :gitlab 시작
  • gitlab-ctl restart :gitlab 재시작 

gitlab-ctl status 명령으로 현재 gitlab 상태를 확인 합니다. 

웹서버 및 database 가 설치 되었습니다. 

gitlab 웹 접속이 안될때는 항상 상태를 먼저 확인해보세요 

gitlab 상태 확인

 

5.GitLab 접속

최초 설치 후 접속시 아래 initial_root_password 라는 파일에 패스워드가 작성됩니다.

  • root 접속 패스워드: /etc/gitlab/initial_root_password

external_url 에 설정했던 URL로 접속 합니다. 

접속은 root/[initial_root_password]파일 비밀번호 입니다. 

Ubuntu Gitlab connect

정상적으로 설치가 되고 접속이 된다면 이제 gitlab 을 사용할 준비가 끝났습니다. 

gitlab 접속화면

6.Gitlab 비밀번호 변경 

initial_root_password 를 기억하고 관리 하는 사람은 없겠죠?

마지막으로 root 비밀번호를 변경 하겠습니다. 

우측 상단 계정 관리 버튼을 눌러서 Edit Profile을 설정해서 비밀번호를 변경 합니다. 

관리계정 버튼 클릭 ->Edit Profile -> Password -> 비밀번호 변경 

 

7.GitLab 삭제 

Gitlab 재설치를 혹은 삭제를 하고자 할경우 사용하세요! 

sudo gitlab-ctl cleanse
sudo gitlab-ctl uninstall
sudo apt remove gitlab-ee
sudo apt purge gitlab-ee


rm -rf  /opt/gitlab 
rm -rf  /var/opt/gitlab 
rm -rf  /etc/gitlab 
rm -rf  /var/log/gitlab

 

 

728x90
반응형

'04.DevTools > Git&GitLab' 카테고리의 다른 글

Gitlab Upgrade 하기  (3) 2025.07.30
[GitLab] Project 삭제 방법  (0) 2024.11.07
[GitLab] git 빈 디렉토리 커밋 하는 방법  (0) 2024.09.13
[GitLab] Gitlab 명령어 모음  (0) 2022.04.17
[GitLab] 프로젝트 생성 및 관리  (0) 2022.04.17
728x90
반응형

과감하게 집에있는 오래된 윈도우 데스크탑을 밀어버리고 우분투로 설치 했습니다. 

윈도우만 사용하다가 리눅스로 사용하려니 필요한 유틸이 많습니다. 

 

이번 글에서는 우분투에서 gif 로 움짤을 만드는 프로그램에 대한  설치 및 활용 방법에 대해 알아보겠습니다. 

 

우분투 애니매이션(gif,움잘) Peek 설치 

peek 를 설치 하겠습니다. 

우분투 에서는 ctl+alt +t 키가 콘솔 단축 키입니다. 

## peek 레파지토리 추가 
sudo add-apt-repository ppa:peek-developers/stable
sudo apt update
#peek 설치 
sudo apt install peek -y

 

Peek 실행 

window 키 를 눌러서 peek 입력후  검색 실행 합니다. 

 

 

우분투 peek
peek 실행 화면

peek 을 이용한 녹화 

Jmeter 테스트 진행 사항을 녹화해보았습니다. 

Record as GIF버튼을 누르면  녹화가 실행 됩니다. 

녹화파일은 videos 폴더에서 확인 하세요 

장문에 글로 설명하는 것보다 녹화해서 내용을 이해시키는게 보다 효과적인 방법일수도 있겠습니다. 

 

peek 을 이용한 gif 애니 메이션 녹화

728x90
반응형
728x90
반응형

어플리케이션 부하 테스팅 툴의 한 종류인 Jmeter 사용법에 대해 설명합니다.

해당 자료는 우분투 20.04 LTS 버전 환경 기준으로 Jmeter 사용법에 대해  작성한 글입니다. 

Jmeter 란?

어플리케이션에 대한 부하 테스트를 진행함으로서 성능을 분석하고 측정하기 위한 부하 툴이디

부하를 줄수 있는 방법에는 대표 적으로 아래의 종류 가 있다 . 

  1. Jdbc DataBase 연결 
  2. FTP 
  3. LDAP
  4. Web Service
  5. JMS
  6. HTTP
  7. TCP

JMeter  다운로드

아래의 경로에서 Jmeter 를 다운로드 받습니다. 

2022.04 월 기준으로 현재 5.4.3 버전 까지 릴리즈되었습니다. 

Java 버전 이상에서 구동 되는 툴입니다. 

https://jmeter.apache.org/download_jmeter.cgi

 

Apache JMeter - Download Apache JMeter

Download Apache JMeter We recommend you use a mirror to download our release builds, but you must verify the integrity of the downloaded files using signatures downloaded from our main distribution directories. Recent releases (48 hours) may not yet be ava

jmeter.apache.org

 

apache JMeter 다운로드

JDK 8 설치 

  • open jdk8 install  
sudo apt install openjdk-8-jdk
  • 설치된 java 버전 확인
jmeter@ubuntu2004:~$ java -version
openjdk version "1.8.0_312"
OpenJDK Runtime Environment (build 1.8.0_312-8u312-b07-0ubuntu1~20.04-b07)
OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode)
jmeter@ubuntu2004:~$ javac -version
javac 1.8.0_312

 

JMeter 실행 

  1. 다운로드 바이너리 바일 압축 해제 
  2. jemeter.sh 실행 
jmeter@ubuntu2004:~$ tar xvzf apache-jmeter-5.4.3.tgz 
jmeter@ubuntu2004:~$ cd apache-jmeter-5.4.3/bin
jmeter@ubuntu2004:~/apache-jmeter-5.4.3/bin$ sh jmeter.sh 

JMeter  부하 테스트

JDBC 로 오라클 Database 접속 하여 DML 부하 테스트 하는 방법에 대해 알아보겠습니다. 

 

Thread Group 생성

File ->New  버튼을 눌러 테스트 계획을 만듭니다. 

Test Plan 우클릭 버튼을 눌러 쓰레드 그룹을 만듭니다. 

Jdbc Connection Configuration 생성 

설정 내용

Name :커넥션  명을 작성 한다. 

  • Variable Name for  create pool : 실제 테스트시 사용할 Connection pool 명이다 . 
  • Database URL : 오라클 접속 URL jdbc:oracle:thin:@116.121.154.196:1521:ORCLCDB
  • JDBC Driver Class :오라클 jdbc 드라이버 클래스 명을 선택 한다. 
  • UserName : 접속할 테스트 계정이다 . 
  • Password :접속할 테스트 계정의 비밀번호 이다. 

 

 

테스트 결과 Report  생성 

Test Plan ->Add ->Listener 선택후 확인하고자 하는 결과 리포팅 추가 작업 

  • ViewResult Tree 추가 
  • Summary Report 추가 

Test Plan 작성 내용 정리

  1. Test Plan 생성 
  2. Thread Group 생성
    • 오라클 connection 생성 
    • Jdbc 테스트 쿼리 작성 
  3. 테스트 결과 리포트 추가
    1. ViewResult Tree 추가(3-1 그림 참고)
    2. Summary Report 추가 (3-2 그림 참고)

 

Jmeter Test Plan
3-1.Jmeter Summary Report

 

3-2.Jmeter Result Tree

728x90
반응형
728x90
반응형

Python 이미지

파이썬 가상환경 왜 쓰지? 

파이썬은 현재 [2022.04.12] 기준으로 3.10 버전 까지 릴리즈가 되었습니다. 

파이썬 릴리즈 버전

 

버전 마다 파이썬 문법이 달라서 환경 구성을 별도로 해야 하는 경우가 종종 발생합니다. 

이럴때 python 에서 제공하는 virtualenv(venv) 기능을 사용함으로서 버전 별로 개발 환경을 달리하여 구성 할수 있습니다. 

 

예를 들어 각각 아래와 같은 환경에서 프로젝트가 환경이 구성되고 개발 되어질수 있습니다. 

  • app1 : venv1(파이썬 2.7 버전  + Django3.x)
  • app2 : venv2(파이썬 3.7 버전 + Django4.x )

 

파이썬 버전과 Django 버전별로 사용하는 팩키지(라이브러리)간 의존성으로 인해  호환이 되지 않는 문제가 종종 발생한다. 이러한 문제를 서로다른 동일한 PC 에 가상환경을 만들어 개발함으로서 문제를 해결 할수 있다 . 

 

 

virtualenv VS venv 언떤게 맞는거야? 

둘다 가상환경을 만들수 있다는 점에서 동일 하지만 사용방법및 용도에 따라서 차이가 있습니다. 

virtualenv 는 별도로 패키지를 설치해야(pip install virtualenv) 사용 가능 하다. 

Python3 버전에서는 기본제공하는 라이브러리로 Python3 버전을 사용중이라면 venv 명령을 사용해 가상환경 구성이 가능합니다. 

virtualenv VS venv 비교

 지원 버전 Python 3.3 이상 Python 2 및 Python 3
설치 필요 여부 내장 모듈 (별도 설치 불필요) pip install virtualenv 필요
지원 범위 제한적 여러 Python 버전 지원 (--python 옵션)
확장성 기본적인 가상환경 기능 제공 플러그인 지원 및 확장 가능
속도 일반적으로 빠름 약간 느릴 수 있음

 

가상환경 생성 방법

이제 본격적으로 가상환경 생성 방법에 대해 알아 보겠습니다. 

python -m venv [가상환경이름] 명령을 통해 생성 할 수 있다. 

 

가상 환경 생성

우선 가상환경을 구성할 루트 디렉토리(venv) 를 만듭니다. 

그리고 해당 디렉토리로 들어가서 가상환경을 만들어 줍니다. 

파이썬 2.7 환경에 의미로 py27 가상환경 이름을 주었습니다. 

$ mkdir venv
$ cd venv
$ python -m venv py27

가상환경 생성 확인

py27 이라는 이름으로 폴더가 생기고 파이썬 관련한 파일과 디렉토리가 생겼습니다. 

하지만 파이썬 2.7 버전을 설치를 원했는데 3.7 버전으로 생성이 되었습니다.

생성시 사용자 환경 파이썬 버전으로 가상 환경이 생성이 되어 그렇습니다.

* 필자의 환경은  centos7 에 default 파이썬 2.7 환경 구성이었으나 파이썬 3.7을 별도로 설치해 주었습니다.

리눅스환경에서 파이썬 설치는 아래 글을 참고 하세요

파이썬3.7 설치 

 

[testuser1@centos7:/home/testuser1/venv]$ tree py27 -L 2
py27
|-- bin
|   |-- activate
|   |-- activate.csh
|   |-- activate.fish
|   |-- easy_install
|   |-- easy_install-3.7
|   |-- pip
|   |-- pip3
|   |-- pip3.7
|   |-- python -> /bin/python
|   `-- python3 -> python
|-- include
|-- lib
|   `-- python3.7
|-- lib64 -> lib
`-- pyvenv.cfg

 

파이선 3.7 환경에서 파이썬2.7 가상환경 생성 

python3 버전에서는 venv 로 파이썬2.7 전을 만들수 없는 것 같습니다. virtualenv  팩키지를 설치해서 가상환경을 만들어 보겠습니다. 

  •  pip install virtualenv 로 패키지를 설치합니다. 
  • virtualenv py27 --python=python2.7

원하는 파이썬2.7 버전으로 생성되는것을 확인할수 있습니다. 

[testuser1@centos7:/home/testuser1/venv]$ tree -a py27/  -L 2
py27/
|-- .gitignore
|-- bin
|   |-- activate
|   |-- activate.csh
|   |-- activate.fish
|   |-- activate.nu
|   |-- activate.ps1
|   |-- activate_this.py
|   |-- deactivate.nu
|   |-- easy_install
|   |-- easy_install-2.7
|   |-- easy_install2
|   |-- easy_install2.7
|   |-- pip
|   |-- pip-2.7
|   |-- pip2
|   |-- pip2.7
|   |-- python
|   |-- python2 -> python
|   |-- python2.7 -> python
|   |-- wheel
|   |-- wheel-2.7
|   |-- wheel2
|   `-- wheel2.7
|-- include
|   `-- python2.7 -> /usr/include/python2.7
|-- lib
|   `-- python2.7
|-- lib64
|   `-- python2.7
`-- pyvenv.cfg

7 directories, 24 files

가상환경 진입

 py27/bin/activate 실행하면 가상한경에 진입 할수 있습니다.

  • . py27/bin/activate
  • python -V 명령을 통해 설치된 버전 확인 
  • pip list 명령을 통해 설치된 버전 확인 (pip 를 통해 파이썬에서 필요로 하는 팩키지를 설치할수 있습니다.)
(py27) [testuser1@centos7:/home/testuser1/venv]$ python -V
Python 2.7.5
(py27) [testuser1@centos7:/home/testuser1/venv]$ pip --version
pip 20.3.4 from /home/testuser1/venv/py27/lib/python2.7/site-packages/pip (python 2.7)
(py27) [testuser1@centos7:/home/testuser1/venv]$ pip list
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support pip 21.0 will remove support for this functionality.
Package    Version
---------- -------
pip        20.3.4
setuptools 44.1.1
wheel      0.37.1

python2.7 환경에서 개발 할수 있는 환경을 만들어 졌습니다. 

 

가상환경  나오기 / 삭제 

Ctrl +D 가상환경에  빠져 나올수 있습니다. 

가상환경이 삭제는 그냥 지우시면 됩니다. (py27 ) 삭제 

728x90
반응형
728x90
반응형

Django 와 Tibero 연동 방법에 대한 설명 자료입니다. 

Django With Tibero

 

테스트 환경 사전 준비 사항

테스트를 하기위해서는 파이썬과 파이썬 개발 툴을 설치 해야 합니다. 

그리고 Django Framework 과 Tibero 를 연결하기 위해서는 Tibero odbc 설치가 되어야 하며 

django 와 Tibero 연결을 위한 tibero 용 connector 가 준비 되어야 합니다. 

  • 파이썬 
  • 파이참
  • Tibero odbc 연결
  • Tibero 연동 django Connector

연결 되는 방식은 아래의 그림과 같습니다. 

Tibero 연결 흐름도

 

파이썬 개발툴 (PyCharm) 다운로드 

테스트를 진행 하기위해 파이썬 개발 도구 툴인 PyCharm 을 다운로드 받습니다. 

아래 경로에서 파이참을 다운로드 받습니다. 

Professional 버전과 Community 버전이 있는데 무료 버전인 Community 버전으로 연동 테스트를 진행 하겠습니다. 

https://www.jetbrains.com/ko-kr/pycharm/download/#section=windows

 

다운로드 PyCharm: JetBrains가 만든 전문 개발자용 Python IDE

 

www.jetbrains.com

 

 

PyCharm 샘플 프로젝트 오픈

PyCharm 을 실행후 File -> open -> DjangoSample 프로젝트를  오픈합니다. 

 

파이썬 가상 환경 생성

파이썬 가상 환경은 파이썬 프로젝트를 진행할 때 독립된 환경을 제공해주는 도구 입니다. 

각각의 어플리케이션마다 구동 환경이 다를 경우 별도의 환경을 개별 적으로 만들어 줄수 있습니다. 예를 들어 첫번째 어플리케이션은 파이썬 2.7 버전  + Django3.x  환경으로 구성하고 두번째 어플리케이션은 파이썬 3.7 버전 + Django4.x 버전으로 환경으로 독립적으로 구성해서 개발을 진행 할수 있습니다.

  • app1 : venv1(파이썬 2.7 버전  + Django3.x)
  • app2 : venv2(파이썬 3.7 버전 + Django4.x )

가상환경을 만드는 방법에 대해 알아보겠습니다. 

 

파이참을 실행하면 화면 하단에 Terminal 이란 창이 있습니다.

해당 창은 윈도우 CMD 창에서 작업을 진행 하는 내용과 동일 하게 수행 할수 있는 기능 입니다. 

D:\ 에 가상환경을 만들어 보겠습니다.

python -m venv samples 명령을 통해 가상 환경을 만듭니다. 

 

cd D:\ 

mkdir venvs

cd venvs

python -m venv samples

python -m venv samples 수행 후 samples 라는 디렉 토리가 생기고 samples 디렉토리 내에는 가상화 할수 있는 환경 파일들이 추가 생성 되게 됩니다. 

activate 명령을 통해 가상환경에 진입합니다. 반대로 빠져 나오고자 할때는 deactivate 명령을 수행 합니다. 

  • activate :가상환경 진입
  • deactivate : 가상환경 나오기 
D:\venvs\samples>cd Scripts
D:\venvs\samples\Scripts>activate

(samples) D:\venvs\samples\Scripts>deactivate
D:\venvs\samples\Scripts>

Django 팩키지 설치 

Tibero 와 연동하기 위해서는 pyodbc 가 설치 되어 있어야 합니다. 

그리고 Django 버전은 2.2.x 버전을 설치 해야 합니다. django 3.x 버전을 지원하는 Tibero adapter 가 현재는 없는것으로 보입니다. 

파이썬 에서 팩키지 설치는 pip 명령으로 설치가 가능합니다. 

python -m pip install --upgrade pip
pip install Django==2.2.24
pip install pyodbc==4.0.31
  • pip list 를 통해 설치된 팩키지 리스트를 확인해볼수 있습니다. 
(samples) D:\venvs\samples\Scripts>pip list
Package    Version
---------- -------
Django     2.2.24
pip        22.0.4
pyodbc     4.0.31
pytz       2022.1
setuptools 41.2.0
sqlparse   0.4.2

 

 


[윈도우]DJango Tibero 연동 테스트 

테스트를 하기 위한 개발 환경 준비가 끝났습니다.

이제 Django 와 Tibero 연동 테스트를 진행 하겠습니다. 

 

Tibero ODBC 설치 및 접속 설정 

Tibero ODBC 설치 관련한 내용은 Tibero 매뉴얼을 참고 하세요 

https://technet.tmaxsoft.com/upload/download/online/tibero/pver-20180723-000001/index2.html

 

Tibero 6 Online Manual

 

technet.tmaxsoft.com

Tibero ODBC 설치  Django Tibero 연결 정보 수정 (settings.py)

 

Django Sample 프로젝트 실행 

가상환경 진입 상태에서 다운로드 받은 샘플 프로 젝트를 수행 합니다. 

수행 명령은 python manage.py runserver 입니다. 

python manage.py runserver

 

해당 명령을 수행하면 에러가 발생합니다. 

Tibero 와 연동을 하기위한 Django db adapter 가 없어서 에러가 발생합니다. 

D:\venvs\samples\lib\site-packages\django\db\__init__.py

 

 

(samples) D:\TestLink-django\DjangoSample>python manage.py runserver
Watching for file changes with StatReloader
Exception in thread django-main-thread:
Traceback (most recent call last):
  File "D:\venvs\samples\lib\site-packages\django\db\utils.py", line 110, in load_backend
    return import_module('%s.base' % backend_name)
  File "C:\Users\jungki\AppData\Local\Programs\Python\Python37\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'django.db.backends.tibero'

....................
..............
...........
중략
...........
...........
    class AbstractBaseUser(models.Model):
  File "D:\venvs\samples\lib\site-packages\django\db\models\base.py", line 117, in __new__
    new_class.add_to_class('_meta', Options(meta, app_label))
  File "D:\venvs\samples\lib\site-packages\django\db\models\base.py", line 321, in add_to_class
    value.contribute_to_class(cls, name)
  File "D:\venvs\samples\lib\site-packages\django\db\models\options.py", line 204, in contribute_to_class
    self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
  File "D:\venvs\samples\lib\site-packages\django\db\__init__.py", line 28, in __getattr__
    return getattr(connections[DEFAULT_DB_ALIAS], item)
  File "D:\venvs\samples\lib\site-packages\django\db\utils.py", line 201, in __getitem__
    backend = load_backend(db['ENGINE'])
  File "D:\venvs\samples\lib\site-packages\django\db\utils.py", line 125, in load_backend
    ) from e_user
django.core.exceptions.ImproperlyConfigured: 'django.db.backends.tibero' isn't an available database backend.
Try using 'django.db.backends.XXX', where XXX is one of:
    'mysql', 'oracle', 'postgresql', 'sqlite3'

 

Django 연동 Tibero adapter 다운로드 및 디렉 토리 복사 

아래 경로에서 Django 와 연동할수 있는 아답터를 다운로드 받습니다. 

다운로드 받은 파일을 에러가 발생한 디렉토리로 복사합니다. 

Django Tibero adapter

  • 파일 이름 변경: DjangoAdapter-main -> tibero

D:\venvs\samples\Lib\site-packages\django\db\backends 경로에 이름 변경한 tibero 폴더 복사

 

* D:\venvs\samples\lib\site-packages\django\db\backends\tibero

 

https://github.com/TiberoClient/DjangoAdapter

 

GitHub - TiberoClient/DjangoAdapter

Contribute to TiberoClient/DjangoAdapter development by creating an account on GitHub.

github.com

 

 

Django migrate

python manage.py runserver 을 다시 수행 합니다. 

 

Starting development server at http://127.0.0.1:8000/ 라는 메시지가 나오면 정상 적으로 어플리케이션이 구동한 상태입니다. 

웹에서 http://127.0.0.1:8000/admin 접속 합니다. 

에러가 발생 할 것입니다. 

 

Django FrameWork 에서 사용 되는 Table 들이 없어서 발생하는 문제입니다. 

 

 

 

어플리케이션 수행시 (python manage.py runserver )  내용을 좀더 자세히 보겠습니다. 

친절하게 python manage.py migrate 수행하라고 설명해 주고 있습니다. 

 

(samples) D:\TestLink-django\dqaDjangoSample>python manage.py runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).

You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, polls, sessions.
Run 'python manage.py migrate' to apply them.
April 06, 2022 - 20:38:15
  • python manage.py migrate 수행 
    • 해당 명령을 수행하면 django framework 에서 필요로 하는 여러 테이블들을 Tibero 서버에 자동으로 생성을 해주게 됩니다. 
(samples) D:\TestLink-django\dqaDjangoSample>python manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, polls, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying admin.0003_logentry_add_action_flag_choices... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying auth.0008_alter_user_username_max_length... OK
  Applying auth.0009_alter_user_last_name_max_length... OK
  Applying auth.0010_alter_group_name_max_length... OK
  Applying auth.0011_update_proxy_permissions... OK
  Applying polls.0001_initial... OK
  Applying sessions.0001_initial... OK

 

  • Tibero 계정 생성된 테이블 확인 
SQL> ls 

NAME                               SUBNAME                  TYPE                
---------------------------------- ------------------------ --------------------
AUTH_GROUP_GROUP_ID_B120CBF9                                INDEX
AUTH_GROUP_PERMISSION_84C5C92E                              INDEX
AUTH_GROU_GROUP_ID__0CD325B0_U                              INDEX
AUTH_PERMI_CONTENT_TY_2F476E4B                              INDEX
AUTH_PERM_CONTENT_T_01AB375A_U                              INDEX
AUTH_USER_USER_ID_G_94350C0C_U                              INDEX
AUTH_USER_USER_ID_P_14A6B632_U                              INDEX
AUTH_USER__GROUP_ID_97559544                                INDEX
AUTH_USER__PERMISSION_1FBB5F2C                              INDEX
AUTH_USER__USER_ID_6A12ED8B                                 INDEX
AUTH_USER__USER_ID_A95EAD1B                                 INDEX
DJANGO_ADM_CONTENT_TY_C4BCE8EB                              INDEX
DJANGO_ADM_USER_ID_C564EBA6                                 INDEX
DJANGO_CO_APP_LABEL_76BD3D3B_U                              INDEX
DJANGO_SES_EXPIRE_DAT_A5C62663                              INDEX
POLLS_CHOI_QUESTION_I_C5B4B260                              INDEX
_TIBERO_CON58500778                                         INDEX
_TIBERO_CON58800226                                         INDEX
_TIBERO_CON59100508                                         INDEX
_TIBERO_CON59400665                                         INDEX
_TIBERO_CON59500888                                         INDEX
_TIBERO_CON59700316                                         INDEX
_TIBERO_CON60100546                                         INDEX
_TIBERO_CON60500165                                         INDEX
_TIBERO_CON61200100                                         INDEX
_TIBERO_CON61600781                                         INDEX
_TIBERO_CON63100670                                         INDEX
_TIBERO_CON63900727                                         INDEX
_TIBERO_CON64200758                                         INDEX
_TIBERO_CON64700708                                         INDEX
_TIBERO_LIDX344900                                          INDEX
_TIBERO_LIDX345100                                          INDEX
_TIBERO_LIDX346800                                          INDEX
AUTH_GROUP_PERMISSIONS_SQ                                   SEQUENCE
AUTH_GROUP_SQ                                               SEQUENCE
AUTH_PERMISSION_SQ                                          SEQUENCE
AUTH_USER_GROUPS_SQ                                         SEQUENCE
AUTH_USER_SQ                                                SEQUENCE
AUTH_USER_USER_PERMISSIONS_SQ                               SEQUENCE
DJANGO_ADMIN_LOG_SQ                                         SEQUENCE
DJANGO_CONTENT_TYPE_SQ                                      SEQUENCE
DJANGO_MIGRATIONS_SQ                                        SEQUENCE
POLLS_CHOICE_SQ                                             SEQUENCE
POLLS_QUESTION_SQ                                           SEQUENCE
AUTH_GROUP                                                  TABLE
AUTH_GROUP_PERMISSIONS                                      TABLE
AUTH_PERMISSION                                             TABLE
AUTH_USER                                                   TABLE
AUTH_USER_GROUPS                                            TABLE
AUTH_USER_USER_PERMISSIONS                                  TABLE
DJANGO_ADMIN_LOG                                            TABLE
DJANGO_CONTENT_TYPE                                         TABLE
DJANGO_MIGRATIONS                                           TABLE
DJANGO_SESSION                                              TABLE
POLLS_CHOICE                                                TABLE
POLLS_QUESTION                                              TABLE
AUTH_GROUP_PERMISSIONS_TR                                   TRIGGER
AUTH_GROUP_TR                                               TRIGGER
AUTH_PERMISSION_TR                                          TRIGGER
AUTH_USER_GROUPS_TR                                         TRIGGER
AUTH_USER_TR                                                TRIGGER
AUTH_USER_USER_PERMISSIONS_TR                               TRIGGER
DJANGO_ADMIN_LOG_TR                                         TRIGGER
DJANGO_CONTENT_TYPE_TR                                      TRIGGER
DJANGO_MIGRATIONS_TR                                        TRIGGER
POLLS_CHOICE_TR                                             TRIGGER
POLLS_QUESTION_TR                                           TRIGGER

 

Django admin(테스트 계정 생성)

  • Django admin 에 접속 하려면 user 를 만들어 줘야 합니다. 
  • admin 유저를 생성 하겠습니다.
  • python manage.py createsuperuser 명령을 통해 admin 유저의 계정과 비번을 생성 하겠습니다. 
  • testuser1 이라는 계정을 만들겠습니다. 
(samples) D:\TestLink-django\dqaDjangoSample>python manage.py createsuperuser
Username (leave blank to use ''): testuser1
Email address: testuser1@example.com
Password:
Password (again):
Superuser created successfully.

생성된 user 로 접속 - URL (http://127.0.0.1:8000/admin)

user 미생성 시 접속 불가  user 생성후 접속 

 

Django Admin 설문 작성(Polls) 테스트 

  • Questions: 설문지 제목 
  • Choices : 설문지 선택 내용 작성 

  • Questions 버튼을 눌러서 설문할 주제를 작성합니다. 

 

  • Choices 버튼을 눌러서 선택지를 작성합니다 
  • 테스를 위해 3개은 선택지를 만들었습니다. 

설문 작성이 완료 되었고 이제 설문 페이지에 접속 해서 등록된 내용이 잘 나오는지 확인해 보겠습니다.

http://127.0.0.1:8000/polls/ 페이지로 접속을 합니다. 

등록한 설문지가 정상적으로 나오고 있습니다. 

 

 

마지막으로 설문 투표 테스트를 진행해 보시기 바랍니다. 

 

 

[리눅스]DJango Tibero 연동 테스트 

Centos7 기준으로 설명 합니다. 

 

UnixODBC설치 

unixODBC 와 연동 테스트 진행 예정으로 unixODBC를 설치 합니다. 

 

unixODBC 다운로드 

아래 경로에서 다운로드 받습니다. 

http://www.unixodbc.org/download.html

 

unixODBC

Distribution Format unixODBC is currently availible in a gzip, tar format. This means that you should; 1. copy the unixODBC-2.3.9.tar.gz file somewhere you can create files and directories 2. gunzip unixODBC*.tar.gz 3. tar xvf unixODBC*.tar Doing so will c

www.unixodbc.org

 

unixODBC install

  • 환경변수를 설정 합니다. 
#ODBC 환경변수 설정 
export UNIXODBC_HOME=/home/django/unixODBC-2.3.9
export LD_LIBRARY_PATH=$UNIXODBC_HOME/lib:$LD_LIBRARY_PATH
export PATH=$UNIXODBC_HOME/bin:$PATH
  • 설치를 진행 합니다. 
./configure --prefix=$UNIXODBC_HOME --sysconfdir=$UNIXODBC_HOME/etc --with-iodbc-inidir=$UNIXODBC_HOME/etc --disable-gui
&& make
&& make install
  • odbc 연동 환경설정을 합니다. 
#위치 : HOME/.odbc.ini
vi .odbc.ini

[ODBC Data Sources]

Tibero7 = Tibero7 ODBC driver

[ODBC]

Trace = 1

TraceFile = /home/django/unixODBC/unixODBC-2.3.9/trace/odbc.trace

[Tibero7]

Driver = /home/django/tibero7/client/lib/libtbodbc.so

Description = Tibero ODBC driver for Tibero

server = xxx.xxx.xxx.xxx


#server는(ip,hostname 둘다가능)

port = 17000

#port 는 tibero port

database = tibero

#database 는  DB_NAME 입력 

User =tibero

Password = tmax

 

unixODBC 테스트 

[django@centos7:/home/django/unixODBC-2.3.9]$ isql -v Tibero7
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> select * from dual;
+------+
| DUMMY|
+------+
| X    |
+------+
SQLRowCount returns 1
1 rows fetched
SQL>

 

리눅스 파이썬 Dajngo 환경 설정 

윈도우에서 테스트 했던 방식과 동일 합니다. 

가상 화경을 셋팅 합니다. 

mkdir venvs

#경로이동
python -m venv djangoenv

#파이썬 가상 환경진입
. djangoenv/bin/activate

#압축 해제 
unzip DjangoAdapter-main.zip
unzip dqaDjangoSample.zip

# tibero django adapter  복사 
cp -Rf DjangoAdapter-main /home/django/venvs/djangoenv/lib/python3.7/site-packages/django/db/backends/tibero

 

  • 디렉 토리 구조 입니다. 
(djangoenv) [django@centos7:/home/django]$ tree venvs/ -L 2
venvs/
|-- djangoenv
|   |-- bin
|   |-- include
|   |-- lib
|   |-- lib64 -> lib
|   |-- pip-selfcheck.json
|   |-- pyodbc.pyi
|   `-- pyvenv.cfg
|-- dqaDjangoSample
|   |-- __init__.py
|   |-- __pycache__
|   |-- settings.py
|   |-- urls.py
|   `-- wsgi.py
|-- dqaDjangoSample.zip
|-- manage.py
`-- polls
    |-- __init__.py
    |-- __pycache__
    |-- admin.py
    |-- apps.py
    |-- migrations
    |-- models.py
    |-- templates
    |-- tests.py
    |-- urls.py
    |-- views.py
    `-- views2.py

 

파이썬 Dajngo Tibero 연동 필요 팩키지 설치 

  • 설치 리스트를 파일로 관리 해서 설치 하도록 하겠습니다.
  • 윈도우에서 설치했던 패키지와 동일 합니다. 
 python -m pip install --upgrade pip
 pip install Django==2.2.24
 pip install pyodbc==4.0.31

 

 

Django 실행 및 테스트 

  • python manage.py runserver 0.0.0.0:8000

(djangoenv) [django@centos7:/home/django/venvs]$ python manage.py runserver 0.0.0.0:8000               
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
April 08, 2022 - 07:53:32
Django version 2.2.24, using settings 'dqaDjangoSample.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.
[08/Apr/2022 07:53:34] "GET /admin/ HTTP/1.1" 200 7031
[08/Apr/2022 07:53:35] "GET /static/admin/css/responsive.css HTTP/1.1" 200 17944
[08/Apr/2022 07:53:35] "GET /static/admin/css/base.css HTTP/1.1" 200 16378
[08/Apr/2022 07:53:35] "GET /static/admin/css/dashboard.css HTTP/1.1" 200 412
[08/Apr/2022 07:53:35] "GET /static/admin/css/fonts.css HTTP/1.1" 200 423
[08/Apr/2022 07:53:35] "GET /static/admin/img/icon-deletelink.svg HTTP/1.1" 200 392
[08/Apr/2022 07:53:35] "GET /static/admin/img/icon-addlink.svg HTTP/1.1" 200 331
[08/Apr/2022 07:53:35] "GET /static/admin/img/icon-changelink.svg HTTP/1.1" 200 380
[08/Apr/2022 07:53:35] "GET /static/admin/fonts/Roboto-Light-webfont.woff HTTP/1.1" 200 85692
[08/Apr/2022 07:53:35] "GET /static/admin/fonts/Roboto-Bold-webfont.woff HTTP/1.1" 200 86184
[08/Apr/2022 07:53:35] "GET /static/admin/fonts/Roboto-Regular-webfont.woff HTTP/1.1" 200 85876

  • 윈도우에서 테스트 했던 방법과 동일 하게 테스트를 진행해 볼수 있습니다. 

 

728x90
반응형

+ Recent posts