mac 下安裝docker,在docker下安裝oracle
docker安裝oracle
下載映象
docker pull alexeiled/docker-oracle-xe-11g
啟動映象為一個容器,並命名為oracle
docker run -h "oracle" --name "oracle" -d -p 49160:22 -p 49161:1521 -p 49162:8080 alexeiled/docker-oracle-xe-11g
使用docker exec -it :在容器裡執行命令,並輸出結果
docker exec -it 806ebe7f5231 /bin/bash
其中 806ebe7f5231 是我們的containerID
可以通過
docker ps
命令獲得
49160是我們用ssh連線對應的埠
49161是我們連線sqlplus對應的埠
49162是我們連線oem對應的埠
本地連線oracle資料庫
hostname: localhost
port: 49161
sid: xe
username: system
password: oracle
SYS的密碼: oracle
關閉docker後,再次開啟時連線oracle會提示oracle “no listen”錯誤
啟動oracle,這個oracle是開始安裝時命名的
docker start oracle
進入到oracle
docker exec -it 806ebe7f5231 /bin/bash
再次連結時就能正常連結了
登入oracle
sqlplus system/oracle
建立使用者,by後面是新建使用者的登入密碼,這裡是沒有任何引號的,我這裡是mac
create user HZYXY_BI identified by HZYXY_BI;
授予許可權
grant resource,connect to HZYXY_BI;
切換使用者登入
conn HZYXY_BI/HZYXY_BI;
tips:如果提示
Not connected
利用 exit 命令,退出後再重新登入下就可以了,有時候登入連結會丟失
在oracle匯入匯出時,必須要用相同的使用者名稱,不行的話就改匯出的sql語句
docker的映象好比是類,容器好像是new出來的例項
docker 檢視映象
docker images
docker 刪除映象,可以同時刪除多個,image_id 以空格隔開
docker rmi image_id
docker 刪除映象時報錯
Error response from daemon: conflict: unable to delete c3ac1f45d722 (must be forced) - image is being used by stopped container b32b05e28c18
加上引數 -f 即可,force 強制刪除
docker rmi c3ac1f45d722 -f
停止所有的容器,並且刪除所有容器
docker stop $(docker ps -q) & docker rm $(docker ps -aq)
docker 下載nginx(預設官方)
docker pull nginx
執行,-p 把容器中的埠對映到主機上,-v 將主機的目錄掛載到容器的目錄,-v只能對映目錄,不能對映檔案,命名為n6,最後面是映象id
docker run -p 80:80 --name n2 b8efb18f159b
先執行一個容器,然後再進去容器裡面,去查詢對應的目錄
docker exec -it 2b917488e56b /bin/bash
從根目錄就開始匹配nginx關鍵字
find / |grep "nginx"
從查詢到的列表中查詢到檔案目錄是在
/usr/share/nginx/html
nginx.conf配置檔案在
/etc/nginx/nginx.conf
conf.d配置目錄在
/etc/nginx/conf.d
日誌目錄在
/var/log/nginx
執行成功,但是啟動不了,不知道是什麼鬼
docker run -p 80:80 --name n8 -v $PWD/www:/usr/share/nginx/html/ -v $PWD/:/etc/nginx/ -v $PWD/logs:/var/log/nginx -d b8efb18f159b