mac安裝docker后,pull下來的鏡像使用命令啟動,為什么在容器中的鏡像無法啟動?
比如通過命令docker pull deadok22/docker-oracle-xe-11g
此時 oracle已經被安裝到我們docker
下載完成后通過命令啟動容器鏡像:docker run -h "oracle" --name "oracle" -d -p 49160:22 -p 49161:1521 -p 49162:8080 deadok22/docker-oracle-xe-11g
49160是我們用ssh連接對應的端口
49161是我們連接sqlplus對應的端口
49162是我們連接oem對應的端口
通過命令查詢:docker ps -a,發現oracle容器的狀態為:Exited (0) 11 hours ago,它并沒有運行。
主要原因是:Docker容器后臺運行,就必須有一個前臺進程。主線程結束,容器會退出。
我們要把啟動命令改為:docker run -dit -h "oracle" --name "oracle" -d -p 49160:22 -p 49161:1521 -p 49162:8080 deadok22/docker-oracle-xe-11g
執行命令后問題即可解決。
接下來我們啟動容器 并進入sqlplus界面
使用docker exec -it <CONTAINER> <COMMAND>:在容器里執行命令,并輸出結果
docker exec -it 0deb75d61474? /bin/bash
其中? 0deb75d61474 是我們的containerID?
可以通過docker ps查詢容器信息
接下來我們可以進入sqlplus界面?
username: system
password: oracle
SYS的密碼oracle