Oracle 실습 환경 구성
2025-09-24 nipa-ai-agent-Oracle-실습-환경-구성
클라우드 와 vm 와 docker 와 Linux
가상머신(Virtual Machine)
- 하나의 물리적인 컴퓨터에 여러개의 가상 머신을 생성
- Host OS: 실제 물리적인 서버
- Guest OS: 실제 물리적인 서버에 기생하는 가상 서버
- 하이퍼바이저: 물리적인 하나의 머신위에 여러개의 가상머신을 구동/관리( vmware,kvm)
- 장점: guestOS가 하나의 완벽한 독립서버처럼 구동(실제와 구분불가, 독립된 컴퓨터처럼 사용가능)
- 단점: guestOS들이 Host OS의 자원을 배타적으로 사용(자원낭비/자원부족현상)
→ 클라우드: 가상머신을 임대하여 장사
도커 (docker)
- 하나의 물리적인 컴퓨터에 여러개의 가상 머신을 생성
- Host OS: 실제 물리적인 서버
- 컨테이너(Guest-OS): 실제 물리적인 서버에 기생하는 가상 서버, 단 host-OS를 공유
- 도커(=하이퍼바이저): 물리적인 하나의 머신위에 여러개의 가상환경을 구동
- 장점: 컨테이너들이 Host-OS의 자원을 Share(부족하면 끌어다쓰거나, 반납할수 있다)
- 단점: 컨테이너(게스트OS)가 완전한 Server 가 아님(컴퓨터처럼 자유롭게 활용 못함)
OCI 환경 구성
필요한 sw tool 설치 후 서버에 접속
xshell, xftp 설치
https://www.netsarang.com/ko/free-for-home-school/
가상환경 연결
source myvenv/bin/activate
conda activate venv
Xshell로 생성한 서버에 ssh 접속하기
호스트: 할당받은 IP주소 사용자이름: Ubuntu public key 선택 → 설정 → 키파일 지정 → [가져오기 ] → OCI 인스턴스 생성시 download한 SSH key파일을 지정
서버에 ssh로 접속 후 필요한 패키지를 설치[개인용]
[1] Linux update
sudo apt-get update
sudo apt-get -y upgrade
sudo apt install net-tools
[2] nginx 설치
sudo apt install nginx
[3] 서버 방화벽 오픈
우분투 표준
ufw allow 8080/tcp
OCI 표준
sudo iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT
80,5000,3389,5432 등 필요한 tcp port 오픈
[4] docker 설치
apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose
sudo systemctl status docker
서버에 ssh로 접속 후 필요한 설정을 추가[개인용 + 공유 작업용]
[5] xrdp설치
sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
sudo apt install xrdp
sudo systemctl enable xrdp
sudo adduser xrdp ssl-cert
sudo ufw allow 3389/tcp
sudo systemctl enable xrdp
sudo apt-get install python3-tk
[6] python 기상환경 설치( venv 기반)
sudo apt install python3-venv
sudo apt install python3-pip
[개인 + 공유 작업용] python3 -m venv myvenv
[7] python 가상환경 설치 ( Anacodna 기반)
sudo apt install curl -y
curl --output anaconda.sh https://repo.anaconda.com/archive/Anaconda3-2024.10-1-Linux-x86_64.sh
bash anaconda.sh
아나콘다 설치
https://www.anaconda.com/download
설치 후 propmt 입장
conda create -n "가상환경이름" python=버전
conda create -n venv python=3.10
cmd에서 찾지 말고 anaconda propmt에서 찾자.
서버에 ssh로 접속 후 database를 설치
루트 폴더에 docker-compose.yml파일을 생성
# 루트 디렉토리에 직접 파일 생성
sudo nano /root/docker-compose.yml
1단계: 파일 내용 확인
cat docker-compose.yml
2단계: 파일이 비어있다면 작성
nano docker-compose.yml
version: '3.4'
services:
db_singlepoint:
image: pgvector/pgvector:pg17
container_name: "pg-postgres"
environment:
- "POSTGRES_PASSWORD=dbtest1212"
- "TZ=Asia/Seoul"
volumes:
- "postgres_data:/var/lib/postgresql/data"
- "./init:/docker-entrypoint-initdb.d"
restart: unless-stopped
network_mode: "host"
volumes:
postgres_data:
저장 후 실행
*# Ctrl + O → Enter → Ctrl + X (nano 저장 및 종료)
docker-compose up -d*
설치된 docker 기반 postgresql에 접속
docker container ls
docker exec –it 컨테이너ID /bin/bash
(( 컨테이너 내부 shell 환경에서 ))
psql -U postgres
create user test01 password ‘test1234’ superuser;
create database testdb;
grant all privileges on database testdb to test01;
CREATE EXTENSION IF NOT EXISTS vector;
생성된 database에 heidiSQL로 접속
-
네트워크 유형: PostgresSQL(TCP/IP)
- 라이브러리: libq-15.dll
- 호스트명: 자신이 생성한 서버 IP
- 사용자: postgres
- 암호: dbtest1212
- 포트: 5432