docker로 Oracle Database18c 개발 환경을 구축해 보았습니다.
3874 단어 오라클docker-compose도커
배경
어떤 조사를 실시하기 위해 local에 Oracle Database를 구축해 보았습니다, 라는 이야기입니다.
이번은 그 비망록입니다.
개발 환경
절차
oracle databese의 공식 repository 얻기
docker image를 build하기 위한 script는 오라클이 github에 공개하고 있습니다. 이번에는, 그 script를 이용해 docker image의 작성을 실시합니다(순서는 후술).
cd ${projecty root}/build/docker/oracle/
git clone https://github.com/oracle/docker-images.git
oracle database 본문 검색
oracle database 18c(18.3.0) 에서 공개된 바이너리를 가져옵니다.
다운로드 파일 배치
cd ${projecty root}/build/docker/oracle/docker-images/OracleDatabase/SingleInstance/dockerfiles/18.3.0
cp ~/Download/linu.x64_180000_db_home.zip .
docker image의 build
git clone에서 얻은 shell script에서 docker image를 만듭니다.
cd ${projecty root}/build/docker/oracle/docker-images/OracleDatabase/SingleInstance/dockerfiles
sh biuldDockerImage.sh -v 18.3.0 -e
다음 메시지가 출력되는지 확인할 수 있으면 docker image를 만듭니다.
Oracle Database Docker Image for 'ee' version 18.4.0 is ready to be extended:
--> oracle/database:18.4.0-ee
Build completed in 928 seconds.
여기서 다음 오류가 발생하면 docker image를 만들 때 실행하는 셸 스크립트의 줄 바꿈 코드가
LF
에서 CRLF
로 변경되었을 수 있습니다. 대상 셸 스크립트의 줄 바꿈 코드를 LF
로 설정합니다.MD5 for required packages to build this image did not match!
Make sure to download missing files in folder 18.3.0.
이미지 출력 확인
생성된 도커 이미지를 확인합니다.
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
oracle/database 18
3.0-ee c90d8241c96d 3 hours ago 5.98GB
...省略...
docker-compose.yml에 구성 설명
version: '2'
services:
db:
image: oracle/database:18.3.0-ee
environment:
ORACLE_SID: ORCL
ORACLE_PDB: SAMPLE
ORACLE_PWD: password
ORACLE_CHARACTERSET: AL32UTF8
ORA_SDTZ: Japan
ports:
- "1521:1521"
- "5500:5500"
volumes:
- ./build/docker/oracle/oradata:/opt/oracle/oradata
docker container 시작
docker-compose 명령으로 컨테이너를 시작합니다.
이 과정에는 시간이 걸립니다. (30분 정도)
docker-compose up -d
시작을 확인할 수 있으면 빌드가 완료됩니다.
Reference
이 문제에 관하여(docker로 Oracle Database18c 개발 환경을 구축해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/forests-k/items/adc062c415d115b1c73d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)