Oracle 을 Docker 로 기동시키기 위해서는 이미지 가 필요 하다.
물론 Docker hub 에 있는 이미지를 받앗 사용해도 되겠지만, 보안문제나 개인 설정을 추가하고 싶거나, 그냥 직접 해보고 싶은 경우에는 이미지를 직적 빌드하는 것이 기분이 좋다.
환경 OS RHEL 9
docker 설치 되어 있음, root 계정 사용
1. root 경로에 docker-oracle 폴더를 생성 후 아래 명령어 입력
git clone https://github.com/oracle/docker-images.git
2. 아래 경로에서 oracle 설치 파일 다운로드
https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#19c
Database Software Downloads | Oracle
Oracle Database Software Downloads Whether you are a developer, a data scientist, a DBA, an educator, or just interested in databases, Oracle Database 23ai is the ideal way to get started. It provides native support for all modern data types, analytics, an
www.oracle.com
파일 다운로드가 완료되면 해당 파일을 아래 경로로 이동
/root/docker-oracle/docker-images/OracleDatabase/SingleInstance/dockerfiles/19.3.0
3. 이미지 빌드
/root/docker-oracle/docker-images/OracleDatabase/SingleInstance/dockerfiles 경로에서 이미지 빌드
cd /root/docker-oracle/docker-images/OracleDatabase/SingleInstance/dockerfiles
./buildContainerImage.sh -v 19.3.0 -e
약 5분 정도 지난 후 이미지 빌드 완료
4. docker 실행
docker run --name oracle-19c \
-e ORACLE_SID=myoracle \
-e ORACLE_PASSWORD=Oracle_2023 \
-p 1521:1521 \
-v /my-oracle/oracle-19c/oradata/:/opt/oracle/oradata \
oracle/database:19.3.0-ee
위와같이 입력하면 아래와 같은 에러가 발생
아래 내용을 구글링 해서 보니, docker 에서 실행할 때 리소스 제한이 걸리는데 해당 부분을 아래 명령어로 제어가 가능 하다는 거 같다.
https://docs.docker.com/reference/cli/docker/container/run/
docker run
docs.docker.com
그래서 아래와 같이 해당 옵션을 추가하고 실행 하였고 약 20분 정도 뒤에 docker 가 정상적으로 실행 되었다.
docker 실행하면서 oracle 초기화 작업이 진행 되는데 이작업이 생각보다 오래 걸렸다.
이미지 빌드할때 라이트 버전과 빠른 실행 버전이 별도로 있는것 같으니, 다음번 테스트때는 해당 이미지로 빌드 해보는것도 좋을것 같다.
docker run --name oracle-19c \
--ulimit nofile=1024:65536 \
-e ORACLE_SID=myoracle \
-e ORACLE_PASSWORD=Oracle_2023 \
-p 1521:1521 \
-v /my-oracle/oracle-19c/oradata/:/opt/oracle/oradata \
oracle/database:19.3.0-ee
위와 같이 DATABASE IS READY TO USE! 가 나타나면 정상적으로 실행이 된 상태이다
다음 글에서는 Oracle 접속하여 계정생성 및 DBeaver 접속 확인 해보도록 하겠습니다
'AWS' 카테고리의 다른 글
Docker Oracle 계정 생성 및 DBeaver 접속 확인 (0) | 2024.07.14 |
---|---|
RDS 이벤트 구독을 통한 RDS 관리 (1) | 2024.01.07 |
EKS fargate 생성을 위한 설정 (0) | 2023.12.18 |
AWS EC2 종료 Lambda with EventBridge (0) | 2023.11.28 |
AWS EKS LB Controller Install (0) | 2023.09.29 |