使用docker文件

时间:2015-08-16 10:20:41

标签: java oracle docker dockerfile

我正在使用 Docker 进行一些POC,使用 Tomcat Oracle XE数据库设置工作环境。我可以使用url https://hub.docker.com/r/sath89/oracle-xe-11g/~/dockerfile/中的dockerfile创建 Oracle XE映像,但我的要求是在oracle启动期间使用 Docker 不可知方法初始化模式。

我已尝试使用以下sh文件访问 .sql 文件,该文件包含截至目前的插入脚本(而非创建架构)。

以下是我的 dbsetup.sh 文件:

#!/bin/sh
echo "Starting file execution"
date
sqlplus -s system/oracle  << EOF >> D:/java/sql@DbScripts.sql
EOF
echo "Completed execution"
echo "Date is : 'date'"

DbScripts.sql

INSERT INTO PRODUCTS VALUES(75340,'PRODUCT2','CATEGORY2');

1 个答案:

答案 0 :(得分:0)

使用此Dockerfile。使用以下命令构建docker映像:

bash ./buildDockerImage.sh -v 18.4.0 -i -x

启动容器;然后,您可以使用以下命令执行脚本:

docker exec -t --user oracle <container_id> bash -c "echo exit | sqlplus system/oracle @<path_to_your_script>DbScripts.sql"

请注意,要使其正常工作,您需要将卷挂载到脚本的位置。