最近因業務需要,需要搭建一個Oracle數據庫,當然Oracle數據庫支持Linux,但是在上面搭建很是復雜,所以我想起了Docker ,果然在上面發現了一個OracleDB的鏡像,所以下載之,運行,登錄什么的都正常,但是這個鏡像不支持中文字符集,所以為了更好的使用,下面使用Dockerfile文件構建了一個簡單的Docker鏡像,文件內容如下:
構建鏡像文件
這里使用Oracle鏡像作為參考,如果你有其他的Image需要天劍UTF-8字符集支持,也可以參考下面的構建腳本.
FROM wnameless/oracle-xe-11g:latest
MAINTAINER Zhoutao
RUN apt-get update
RUN apt-get install -y locales
RUN locale-gen zh_CN
RUN locale-gen zh_CN.utf8
RUN update-locale LANG=zh_CN.UTF-8 LC_ALL=zh_CN.UTF-8 LANGUAGE=zh_CN.UTF-8
ENV LANG zh_CN.UTF-8
ENV LANGUAGE zh_CN.UTF-8
ENV LC_ALL zh_CN.UTF-8
主要解釋下命令:
- FROM 表示該鏡像依賴於wnameless/oracle-xe-11g:latest
- MAINTAINER 當前鏡像的維護者信息
- RUN 在構建鏡像的時候運行的命令 這里主要是安裝字UTF-8以及中文字符集並設置
- ENV 表示設置系統級環境變量
構建完成之后,使用DataGrip或者Dbearver 來連接到Oracle即可解決Docker Images不支持中文字符集的問題.當然這是一種通用的解決方案,如果你需要修改其他鏡像也是可以參考這個Dockerfile文件的.
Ps: 其他的操作和賬戶等信息可以參考鏈接 https://www.cnblogs.com/Jin520304/p/7884441.html 這里主要是解決Docker Oracle對UTF8 以及中文支持不友好的問題.