본문 바로가기

study/DB

Docker Container로 Oracle을 띄워서 Database 실행

0. 서론

데이터베이스전문가(SQLP) 자격증 취득을 위해 공부하던 중, mac M1에 오라클을 띄워서 실습 공부를 해야할 필요가 있었다. 그러나, 맥북 Apple Silicon(M1)에서는 로컬로 오라클을 띄울 수가 없다.

그래도, 아래 블로그를 찾아 Docker/Colima를 활용해서 Oracle을 띄울 수 있게 되었다.

참고 블로그

1. 설치

1.1 colima

docker desktop은 매우 무거운 프로그램이어서, 가벼운 CLI 환경에서 도커를 실행할 수 있는 오픈 소스인 colima를 사용한다.

brew install colima 

1.2 docker

docker desktop은 docker 공식 웹 홈페이지에서 설치할 수 있다.
Docker 웹 홈페이지

아니면, brew로 설치해도 된다.

# Docker Desktop
brew install --cask docker 

# Docker Engine
brew install docker

2. 실행

colima와 docker 모두 설치 후, colime를 x86_64 환경으로 띄워준다.

colima start --memory 4 --arch x86_64 

정상적으로 실행되고 있는지 확인하려면, docker ps나 images로 확인한다.

docker ps
docker images

모든 명령어를 포함해서 docker run
아직 미숙한 사람을 위해 컨테이너명까지 명시

# 컨테이너명 = oracle으로 명시
docker run --restart unless-stopped --name oracle -e ORACLE_PASSWORD=pass -p 1521:1521 -d gvenzl/oracle-xe 


#-d 를 넣으며 백단에서 계속 실행되...
docker run --name oracle -d -p 1521:1521 jaspeen/oracle-xe-11g

3. 활용

docker log 확인

# docker logs -f (컨테이너명)
docker logs -f oracle

4. DB접속

접속정보

  • host: localhost
  • database: xe (orcl로 되어 있으면 바꿔줘야 함)
  • port: 1521
  • user: system
  • password: XXXX

5. 샘플계정

도커에는 샘플계정이 포함되어 있지 않기 때문에 만들어줘야 한다.

# 한 줄씩 생성
docker exec -it oracle sqlplus
CREATE USER scott identified by tiger;
GRANT CONNECT, resource, dba to scott;

생성 후에는 아래 쿼리로 유저가 정상적으로 생성 된 것을 확인

select username from dba_users where username = 'SCOTT';

SCOTT 접속

docker exec -it oracle sqlplus

 

https://velog.io/@gpg/setting-docker-oracle