diff --git a/src/databases/mysql/Dockerfile b/src/databases/mysql/Dockerfile new file mode 100644 index 0000000..5760d1e --- /dev/null +++ b/src/databases/mysql/Dockerfile @@ -0,0 +1,9 @@ +FROM mysql:5.7 + +LABEL org.opencontainers.image.source=https://github.com/cisco-open/app-simulator +LABEL org.opencontainers.image.description="mysql database for app-simulator" +LABEL org.opencontainers.image.licenses=BSD-3-Clause + +RUN yum install -y php-cli && yum clean all +COPY setup.php /tmp/ +COPY setup.sh /docker-entrypoint-initdb.d/ diff --git a/src/databases/mysql/setup.php b/src/databases/mysql/setup.php new file mode 100644 index 0000000..d53ccd7 --- /dev/null +++ b/src/databases/mysql/setup.php @@ -0,0 +1,33 @@ +databases as $database => $tables) { + $result .= "CREATE DATABASE ".$database.";".PHP_EOL; + $result .= "USE ".$database.";".PHP_EOL; + foreach($tables as $table => $columns) { + $result .="CREATE TABLE ".$table." (".PHP_EOL; + foreach($columns as $column) { + if($column === 'id') { + $result .= " ".$column." INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,".PHP_EOL; + } else { + $result .= " ".$column. " VARCHAR(255),".PHP_EOL; + } + } + + $result = substr($result,0,-2).PHP_EOL; + + $result .=') ENGINE=InnoDB;'.PHP_EOL; + } +} + +echo '=====.PHP_EOL'; + +echo $result; + +echo '=====.PHP_EOL'; + +file_put_contents("/tmp/create.sql",$result); diff --git a/src/databases/mysql/setup.sh b/src/databases/mysql/setup.sh new file mode 100644 index 0000000..abd0cda --- /dev/null +++ b/src/databases/mysql/setup.sh @@ -0,0 +1,3 @@ +#!/bin/bash +APP_CONFIG="$(