> 實作版本:Oracle Database 21c (21.3) ## 前言 * Docker安裝可參考:[Windows 11專業版:Docker安裝及WSL設定](/PASpwFp2QJOI0tZh2v0UCQ) * [Docker Compose的描述檔](/0FetTaT4Q8mmuS9G4R2-pQ) ## 參考文件 * [使用 Windows Docker Desktop 建立 Oracle 環境](https://hackmd.io/@CloudyWing/SJsMfcGMo) * [使用 Docker 建立 Oracle 12c & 新增使用者建立範例資料庫](https://ithelp.ithome.com.tw/articles/10229655) * [GitHub - Oracle image說明](https://github.com/oracle/docker-images/tree/main/OracleDatabase/SingleInstance) * 影片:[Docker Oracle21c Database \||Oracle Database installation on docker container \|| Docker Image \||](https://www.youtube.com/watch?v=knES4E7At_k) ## (一) 建立Docker的Oracle容器 ### 1. 下載 [Oracle Image(GitHub)](https://github.com/oracle/docker-images/tree/main)  ### 2. 另存OracleDatabase資料夾內容 > [color=#D2B4DE]主要是為了裡面的dockerfiles資料夾,有各式的Oracle版本可供使用。 路徑:\OracleDatabase\SingleInstance\dockerfiles  #### dockerfiles 資料夾  ### 3. 下載二進制檔案(binaries) :::danger 下載對應「版本」的檔案。 不需下載檔案的版本(跳過,直接進行第5點):請參考 [此文件](https://github.com/oracle/docker-images/tree/main/OracleDatabase/SingleInstance#building-oracle-database-container-images)。 ::: * 連結:[Oracle Database 21c](https://www.oracle.com/database/technologies/oracle21c-linux-downloads.html) * 下載 Oracle Database 21c (21.3) for Linux x86-64的「LINUX.X64_213000_db_home.zip」  ### 4. zip檔案搬移 :::danger 放到相對應的版本,此以21c為例故放在21.3.0資料夾。 :::  ### 5. 透過命令提示字元建置image cd 到第4步的資料夾路徑 ``` cd xxx\OracleDatabase\SingleInstance\dockerfiles\21.3.0 ``` 建置docker image ``` docker build -t oracle/database:21.3.0-ee --build-arg DB_EDITION=EE ./ ``` :star: DB_EDITION=EE:設置版本類型的變數,內容ex. EE/XE/SE2。 <span>(參考:[Oracle Database container images](https://github.com/oracle/docker-images/tree/main/OracleDatabase/SingleInstance) 進行設置)</span>  ### 6. Docker Images結果  ### 7. 建立docker-compose.yml ```yaml= version: '2' services: db: image: oracle/database:21.3.0-ee # image_name:tag container_name: mydb_Con # Container name hostname: mydb domainname: mydocker.com environment: ORACLE_SID: MYCDB ORACLE_PDB: MYPDB ORACLE_PWD: test ORACLE_CHARACTERSET: AL32UTF8 ports: - 1521:1521 - 5500:5500 tty: true ``` ##### Oracle相關參數可參考:[How to Install Oracle Database 21c on Docker](https://docs.oracle.com/en/database/oracle/oracle-database/21/deeck/index.html#GUID-E9978222-E0CF-4899-B767-3D6626918E78)  ### 8. 透過命令提示字元執行docker-compose cd至docker-compose存放的資料夾路徑: ```yaml= cd xxx\MyDB ``` 執行docker-compose: ```yaml= docker-compose up -d ```  ### 9. Docker Containers結果  ## (二) Oracle SQL Developer ### 1. 下載 [Oracle SQL Developer](https://www.oracle.com/database/sqldeveloper/) [Oracle官方相關說明文件](https://docs.oracle.com/en/database/oracle/sql-developer/19.2/rptug/sql-developer-concepts-usage.html#GUID-464C045C-FBDF-417A-A20B-037D294B3BDA)   > 下載檔案需登入oracle ### 2. 解壓縮下載檔並執行sqldeveloper  ## (三) 連線至Docker的Oracle容器 ### 1. 開啟Oracle SQL Developer  ### 2. 新增連線   * 使用者名稱預設為sys,對應角色為SYSDBA * 密碼為 docker-compose.yml 中的「ORACLE_PWD」 * SID為 docker-compose.yml 中的「ORACLE_SID」 ### 3. 連線成功 
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up