Merge commit '1392bd3a96045302b60d845a90901a4b2234c475' as 'seatmap-webapi'
This commit is contained in:
10
seatmap-webapi/docker/build_all.sh
Executable file
10
seatmap-webapi/docker/build_all.sh
Executable file
@@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
FILES=*
|
||||
|
||||
for f in $FILES
|
||||
do
|
||||
if [[ -d "$f" ]]
|
||||
then
|
||||
docker build "$f" -t "php-crud-api:$f"
|
||||
fi
|
||||
done
|
||||
36
seatmap-webapi/docker/centos8/Dockerfile
Normal file
36
seatmap-webapi/docker/centos8/Dockerfile
Normal file
@@ -0,0 +1,36 @@
|
||||
FROM centos:8
|
||||
|
||||
# add this to avoid locale warnings
|
||||
RUN dnf -y install glibc-locale-source glibc-langpack-en
|
||||
RUN localedef -i en_US -f UTF-8 en_US.UTF-8
|
||||
|
||||
# add utils for repos
|
||||
RUN dnf -y install wget dnf-utils
|
||||
|
||||
# enable remi repo for php
|
||||
RUN dnf -y install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
|
||||
# enable mariadb repo
|
||||
RUN wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup && bash mariadb_repo_setup
|
||||
# enable the postgresql repo
|
||||
RUN dnf -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
|
||||
# enable epel repo
|
||||
RUN dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||
# enable powertools repos
|
||||
RUN dnf -y install 'dnf-command(config-manager)' && dnf -y config-manager --set-enabled PowerTools
|
||||
|
||||
# set php to remi 7.4
|
||||
RUN dnf -y module reset php && dnf -y module enable php:remi-7.4
|
||||
# disable mariadb and postgresql default (appstream) repo
|
||||
RUN dnf -y module disable mariadb
|
||||
RUN dnf -y module disable postgresql
|
||||
|
||||
RUN dnf -y install \
|
||||
php-cli php-xml php-json php-mbstring \
|
||||
MariaDB-server MariaDB-client php-mysqlnd \
|
||||
postgresql12 postgresql12-server php-pgsql postgis30_12 \
|
||||
sqlite php-sqlite3 \
|
||||
git wget
|
||||
|
||||
# install run script
|
||||
ADD run.sh /usr/sbin/docker-run
|
||||
CMD docker-run
|
||||
60
seatmap-webapi/docker/centos8/run.sh
Executable file
60
seatmap-webapi/docker/centos8/run.sh
Executable file
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
echo "================================================"
|
||||
echo " CentOS 8 (PHP 7.4)"
|
||||
echo "================================================"
|
||||
echo -n "[1/4] Starting MariaDB 10.5 ..... "
|
||||
# initialize mysql
|
||||
mysql_install_db > /dev/null
|
||||
chown -R mysql:mysql /var/lib/mysql
|
||||
# run mysql server
|
||||
nohup /usr/sbin/mysqld -u mysql > /root/mysql.log 2>&1 &
|
||||
# wait for mysql to become available
|
||||
while ! mysqladmin ping -hlocalhost >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
done
|
||||
# create database and user on mysql
|
||||
mysql -u root >/dev/null << 'EOF'
|
||||
CREATE DATABASE `php-crud-api` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
CREATE USER 'php-crud-api'@'localhost' IDENTIFIED BY 'php-crud-api';
|
||||
GRANT ALL PRIVILEGES ON `php-crud-api`.* TO 'php-crud-api'@'localhost' WITH GRANT OPTION;
|
||||
FLUSH PRIVILEGES;
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[2/4] Starting PostgreSQL 12.5 .. "
|
||||
# initialize postgresql
|
||||
su - -c "/usr/pgsql-12/bin/initdb --auth-local peer --auth-host password -D /var/lib/pgsql/data" postgres > /dev/null
|
||||
# run postgres server
|
||||
nohup su - -c "/usr/pgsql-12/bin/postgres -D /var/lib/pgsql/data" postgres > /root/postgres.log 2>&1 &
|
||||
# wait for postgres to become available
|
||||
until su - -c "psql -U postgres -c '\q'" postgres >/dev/null 2>&1; do
|
||||
sleep 1;
|
||||
done
|
||||
# create database and user on postgres
|
||||
su - -c "psql -U postgres >/dev/null" postgres << 'EOF'
|
||||
CREATE USER "php-crud-api" WITH PASSWORD 'php-crud-api';
|
||||
CREATE DATABASE "php-crud-api";
|
||||
GRANT ALL PRIVILEGES ON DATABASE "php-crud-api" to "php-crud-api";
|
||||
\c "php-crud-api";
|
||||
CREATE EXTENSION IF NOT EXISTS postgis;
|
||||
\q
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[3/4] Starting SQLServer 2017 ... "
|
||||
echo "skipped"
|
||||
|
||||
echo -n "[4/4] Cloning PHP-CRUD-API v2 ... "
|
||||
# install software
|
||||
if [ -d /php-crud-api ]; then
|
||||
echo "skipped"
|
||||
else
|
||||
git clone --quiet https://github.com/mevdschee/php-crud-api.git
|
||||
echo "done"
|
||||
fi
|
||||
|
||||
echo "------------------------------------------------"
|
||||
|
||||
# run the tests
|
||||
cd php-crud-api
|
||||
php test.php
|
||||
5
seatmap-webapi/docker/clean_all.sh
Executable file
5
seatmap-webapi/docker/clean_all.sh
Executable file
@@ -0,0 +1,5 @@
|
||||
#!/bin/bash
|
||||
# Delete all containers
|
||||
docker rm $(docker ps -a -q)
|
||||
# Delete all images
|
||||
docker rmi $(docker images -q)
|
||||
16
seatmap-webapi/docker/debian10/Dockerfile
Normal file
16
seatmap-webapi/docker/debian10/Dockerfile
Normal file
@@ -0,0 +1,16 @@
|
||||
FROM debian:10
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# install: php / mysql / postgres / sqlite / tools / mssql deps
|
||||
RUN apt-get update && apt-get -y install \
|
||||
php-cli php-xml php-mbstring \
|
||||
mariadb-server mariadb-client php-mysql \
|
||||
postgresql php-pgsql \
|
||||
postgresql-11-postgis-2.5 \
|
||||
sqlite3 php-sqlite3 \
|
||||
git wget
|
||||
|
||||
# install run script
|
||||
ADD run.sh /usr/sbin/docker-run
|
||||
CMD docker-run
|
||||
58
seatmap-webapi/docker/debian10/run.sh
Executable file
58
seatmap-webapi/docker/debian10/run.sh
Executable file
@@ -0,0 +1,58 @@
|
||||
#!/bin/bash
|
||||
echo "================================================"
|
||||
echo " Debian 10 (PHP 7.3)"
|
||||
echo "================================================"
|
||||
|
||||
echo -n "[1/4] Starting MariaDB 10.3 ..... "
|
||||
# make sure mysql can create socket and lock
|
||||
mkdir /var/run/mysqld && chmod 777 /var/run/mysqld
|
||||
# run mysql server
|
||||
nohup mysqld > /root/mysql.log 2>&1 &
|
||||
# wait for mysql to become available
|
||||
while ! mysqladmin ping -hlocalhost >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
done
|
||||
# create database and user on mysql
|
||||
mysql -u root >/dev/null << 'EOF'
|
||||
CREATE DATABASE `php-crud-api` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
CREATE USER 'php-crud-api'@'localhost' IDENTIFIED BY 'php-crud-api';
|
||||
GRANT ALL PRIVILEGES ON `php-crud-api`.* TO 'php-crud-api'@'localhost' WITH GRANT OPTION;
|
||||
FLUSH PRIVILEGES;
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[2/4] Starting PostgreSQL 11.4 .. "
|
||||
# run postgres server
|
||||
nohup su - -c "/usr/lib/postgresql/11/bin/postgres -D /etc/postgresql/11/main" postgres > /root/postgres.log 2>&1 &
|
||||
# wait for postgres to become available
|
||||
until su - -c "psql -U postgres -c '\q'" postgres >/dev/null 2>&1; do
|
||||
sleep 1;
|
||||
done
|
||||
# create database and user on postgres
|
||||
su - -c "psql -U postgres >/dev/null" postgres << 'EOF'
|
||||
CREATE USER "php-crud-api" WITH PASSWORD 'php-crud-api';
|
||||
CREATE DATABASE "php-crud-api";
|
||||
GRANT ALL PRIVILEGES ON DATABASE "php-crud-api" to "php-crud-api";
|
||||
\c "php-crud-api";
|
||||
CREATE EXTENSION IF NOT EXISTS postgis;
|
||||
\q
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[3/4] Starting SQLServer 2017 ... "
|
||||
echo "skipped"
|
||||
|
||||
echo -n "[4/4] Cloning PHP-CRUD-API v2 ... "
|
||||
# install software
|
||||
if [ -d /php-crud-api ]; then
|
||||
echo "skipped"
|
||||
else
|
||||
git clone --quiet https://github.com/mevdschee/php-crud-api.git
|
||||
echo "done"
|
||||
fi
|
||||
|
||||
echo "------------------------------------------------"
|
||||
|
||||
# run the tests
|
||||
cd php-crud-api
|
||||
php test.php
|
||||
16
seatmap-webapi/docker/debian9/Dockerfile
Normal file
16
seatmap-webapi/docker/debian9/Dockerfile
Normal file
@@ -0,0 +1,16 @@
|
||||
FROM debian:9
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# install: php / mysql / postgres / sqlite / tools / mssql deps
|
||||
RUN apt-get update && apt-get -y install \
|
||||
php-cli php-xml php-mbstring \
|
||||
mariadb-server mariadb-client php-mysql \
|
||||
postgresql php-pgsql \
|
||||
postgresql-9.6-postgis-2.3 \
|
||||
sqlite3 php-sqlite3 \
|
||||
git wget
|
||||
|
||||
# install run script
|
||||
ADD run.sh /usr/sbin/docker-run
|
||||
CMD docker-run
|
||||
58
seatmap-webapi/docker/debian9/run.sh
Executable file
58
seatmap-webapi/docker/debian9/run.sh
Executable file
@@ -0,0 +1,58 @@
|
||||
#!/bin/bash
|
||||
echo "================================================"
|
||||
echo " Debian 9 (PHP 7.0)"
|
||||
echo "================================================"
|
||||
|
||||
echo -n "[1/4] Starting MariaDB 10.1 ..... "
|
||||
# make sure mysql can create socket and lock
|
||||
mkdir /var/run/mysqld && chmod 777 /var/run/mysqld
|
||||
# run mysql server
|
||||
nohup mysqld > /root/mysql.log 2>&1 &
|
||||
# wait for mysql to become available
|
||||
while ! mysqladmin ping -hlocalhost >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
done
|
||||
# create database and user on mysql
|
||||
mysql -u root >/dev/null << 'EOF'
|
||||
CREATE DATABASE `php-crud-api` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
CREATE USER 'php-crud-api'@'localhost' IDENTIFIED BY 'php-crud-api';
|
||||
GRANT ALL PRIVILEGES ON `php-crud-api`.* TO 'php-crud-api'@'localhost' WITH GRANT OPTION;
|
||||
FLUSH PRIVILEGES;
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[2/4] Starting PostgreSQL 9.6 ... "
|
||||
# run postgres server
|
||||
nohup su - -c "/usr/lib/postgresql/9.6/bin/postgres -D /etc/postgresql/9.6/main" postgres > /root/postgres.log 2>&1 &
|
||||
# wait for postgres to become available
|
||||
until su - -c "psql -U postgres -c '\q'" postgres >/dev/null 2>&1; do
|
||||
sleep 1;
|
||||
done
|
||||
# create database and user on postgres
|
||||
su - -c "psql -U postgres >/dev/null" postgres << 'EOF'
|
||||
CREATE USER "php-crud-api" WITH PASSWORD 'php-crud-api';
|
||||
CREATE DATABASE "php-crud-api";
|
||||
GRANT ALL PRIVILEGES ON DATABASE "php-crud-api" to "php-crud-api";
|
||||
\c "php-crud-api";
|
||||
CREATE EXTENSION IF NOT EXISTS postgis;
|
||||
\q
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[3/4] Starting SQLServer 2017 ... "
|
||||
echo "skipped"
|
||||
|
||||
echo -n "[4/4] Cloning PHP-CRUD-API v2 ... "
|
||||
# install software
|
||||
if [ -d /php-crud-api ]; then
|
||||
echo "skipped"
|
||||
else
|
||||
git clone --quiet https://github.com/mevdschee/php-crud-api.git
|
||||
echo "done"
|
||||
fi
|
||||
|
||||
echo "------------------------------------------------"
|
||||
|
||||
# run the tests
|
||||
cd php-crud-api
|
||||
php test.php
|
||||
21
seatmap-webapi/docker/run.sh
Executable file
21
seatmap-webapi/docker/run.sh
Executable file
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
FILES=*
|
||||
i=0
|
||||
options=()
|
||||
for f in $FILES; do
|
||||
if [[ -d "$f" ]]; then
|
||||
((i++))
|
||||
options[$i]=$f
|
||||
fi
|
||||
done
|
||||
PS3="> "
|
||||
select f in "${options[@]}"; do
|
||||
if (( REPLY > 0 && REPLY <= ${#options[@]} )); then
|
||||
break
|
||||
else
|
||||
exit
|
||||
fi
|
||||
done
|
||||
dir=$(readlink -f ..)
|
||||
docker rm "php-crud-api_$f" > /dev/null 2>&1
|
||||
docker run -ti -v $dir:/php-crud-api --name "php-crud-api_$f" "php-crud-api:$f" /bin/bash -c '/usr/sbin/docker-run && cd php-crud-api && /bin/bash'
|
||||
12
seatmap-webapi/docker/run_all.sh
Executable file
12
seatmap-webapi/docker/run_all.sh
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
FILES=*
|
||||
|
||||
for f in $FILES
|
||||
do
|
||||
if [[ -d "$f" ]]
|
||||
then
|
||||
dir=$(readlink -f ..)
|
||||
docker rm "php-crud-api_$f" > /dev/null 2>&1
|
||||
docker run -ti -v $dir:/php-crud-api --name "php-crud-api_$f" "php-crud-api:$f"
|
||||
fi
|
||||
done
|
||||
37
seatmap-webapi/docker/ubuntu16/Dockerfile
Normal file
37
seatmap-webapi/docker/ubuntu16/Dockerfile
Normal file
@@ -0,0 +1,37 @@
|
||||
FROM ubuntu:16.04
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# install: php / mysql / postgres / tools / mssql deps
|
||||
RUN apt-get update && apt-get -y install \
|
||||
php-cli php-xml php-mbstring \
|
||||
mariadb-server mariadb-client php-mysql \
|
||||
postgresql php-pgsql \
|
||||
postgresql-9.5-postgis-2.2 \
|
||||
git wget \
|
||||
curl apt-transport-https debconf-utils sudo
|
||||
|
||||
# adding custom MS repository
|
||||
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
|
||||
RUN curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
|
||||
RUN curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list > /etc/apt/sources.list.d/mssql-server-2017.list
|
||||
|
||||
# install SQL Server and tools
|
||||
RUN apt-get update && apt-get -y install mssql-server
|
||||
RUN ACCEPT_EULA=Y MSSQL_PID=Express MSSQL_SA_PASSWORD=sapwd123! /opt/mssql/bin/mssql-conf setup || true
|
||||
RUN ACCEPT_EULA=Y apt-get install -y msodbcsql mssql-tools
|
||||
|
||||
# install pdo_sqlsrv
|
||||
RUN apt-get -y install php-pear build-essential unixodbc-dev php-dev
|
||||
RUN pecl install pdo_sqlsrv-5.3.0
|
||||
RUN echo extension=pdo_sqlsrv.so > /etc/php/7.0/mods-available/pdo_sqlsrv.ini
|
||||
RUN phpenmod pdo_sqlsrv
|
||||
|
||||
# install locales
|
||||
RUN apt-get -y install locales
|
||||
RUN locale-gen en_US.UTF-8
|
||||
RUN update-locale LANG=en_US.UTF-8
|
||||
|
||||
# install run script
|
||||
ADD run.sh /usr/sbin/docker-run
|
||||
CMD docker-run
|
||||
73
seatmap-webapi/docker/ubuntu16/run.sh
Executable file
73
seatmap-webapi/docker/ubuntu16/run.sh
Executable file
@@ -0,0 +1,73 @@
|
||||
#!/bin/bash
|
||||
echo "================================================"
|
||||
echo " Ubuntu 16.04 (PHP 7.0)"
|
||||
echo "================================================"
|
||||
|
||||
echo -n "[1/4] Starting MariaDB 10.0 ..... "
|
||||
# make sure mysql can create socket and lock
|
||||
mkdir /var/run/mysqld && chmod 777 /var/run/mysqld
|
||||
# run mysql server
|
||||
nohup mysqld > /root/mysql.log 2>&1 &
|
||||
# wait for mysql to become available
|
||||
while ! mysqladmin ping -hlocalhost >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
done
|
||||
# create database and user on mysql
|
||||
mysql -u root >/dev/null << 'EOF'
|
||||
CREATE DATABASE `php-crud-api` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
CREATE USER 'php-crud-api'@'localhost' IDENTIFIED BY 'php-crud-api';
|
||||
GRANT ALL PRIVILEGES ON `php-crud-api`.* TO 'php-crud-api'@'localhost' WITH GRANT OPTION;
|
||||
FLUSH PRIVILEGES;
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[2/4] Starting PostgreSQL 9.5 ... "
|
||||
# run postgres server
|
||||
nohup su - -c "/usr/lib/postgresql/9.5/bin/postgres -D /etc/postgresql/9.5/main" postgres > /root/postgres.log 2>&1 &
|
||||
# wait for postgres to become available
|
||||
until su - -c "psql -U postgres -c '\q'" postgres >/dev/null 2>&1; do
|
||||
sleep 1;
|
||||
done
|
||||
# create database and user on postgres
|
||||
su - -c "psql -U postgres >/dev/null" postgres << 'EOF'
|
||||
CREATE USER "php-crud-api" WITH PASSWORD 'php-crud-api';
|
||||
CREATE DATABASE "php-crud-api";
|
||||
GRANT ALL PRIVILEGES ON DATABASE "php-crud-api" to "php-crud-api";
|
||||
\c "php-crud-api";
|
||||
CREATE EXTENSION IF NOT EXISTS postgis;
|
||||
\q
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[3/4] Starting SQLServer 2017 ... "
|
||||
# run sqlserver server
|
||||
nohup /opt/mssql/bin/sqlservr --accept-eula > /root/mssql.log 2>&1 &
|
||||
# create database and user on postgres
|
||||
/opt/mssql-tools/bin/sqlcmd -l 30 -S localhost -U SA -P sapwd123! >/dev/null << 'EOF'
|
||||
CREATE DATABASE [php-crud-api]
|
||||
GO
|
||||
CREATE LOGIN [php-crud-api] WITH PASSWORD=N'php-crud-api', DEFAULT_DATABASE=[php-crud-api], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
|
||||
GO
|
||||
USE [php-crud-api]
|
||||
GO
|
||||
CREATE USER [php-crud-api] FOR LOGIN [php-crud-api] WITH DEFAULT_SCHEMA=[dbo]
|
||||
exec sp_addrolemember 'db_owner', 'php-crud-api';
|
||||
GO
|
||||
exit
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[4/4] Cloning PHP-CRUD-API v2 ... "
|
||||
# install software
|
||||
if [ -d /php-crud-api ]; then
|
||||
echo "skipped"
|
||||
else
|
||||
git clone --quiet https://github.com/mevdschee/php-crud-api.git
|
||||
echo "done"
|
||||
fi
|
||||
|
||||
echo "------------------------------------------------"
|
||||
|
||||
# run the tests
|
||||
cd php-crud-api
|
||||
php test.php
|
||||
21
seatmap-webapi/docker/ubuntu18/Dockerfile
Normal file
21
seatmap-webapi/docker/ubuntu18/Dockerfile
Normal file
@@ -0,0 +1,21 @@
|
||||
FROM ubuntu:18.04
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# install: php / mysql / postgres / sqlite / tools
|
||||
RUN apt-get update && apt-get -y install \
|
||||
php-cli php-xml php-mbstring \
|
||||
mysql-server mysql-client php-mysql \
|
||||
postgresql php-pgsql \
|
||||
postgresql-10-postgis-2.4 \
|
||||
sqlite3 php-sqlite3 \
|
||||
git wget
|
||||
|
||||
# install locales
|
||||
RUN apt-get -y install locales
|
||||
RUN locale-gen en_US.UTF-8
|
||||
RUN update-locale LANG=en_US.UTF-8
|
||||
|
||||
# install run script
|
||||
ADD run.sh /usr/sbin/docker-run
|
||||
CMD docker-run
|
||||
60
seatmap-webapi/docker/ubuntu18/run.sh
Executable file
60
seatmap-webapi/docker/ubuntu18/run.sh
Executable file
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
echo "================================================"
|
||||
echo " Ubuntu 18.04 (PHP 7.2)"
|
||||
echo "================================================"
|
||||
|
||||
echo -n "[1/4] Starting MySQL 5.7 ........ "
|
||||
# make sure mysql can create socket and lock
|
||||
mkdir /var/run/mysqld && chmod 777 /var/run/mysqld
|
||||
# run mysql server
|
||||
nohup mysqld > /root/mysql.log 2>&1 &
|
||||
# wait for mysql to become available
|
||||
while ! mysqladmin ping -hlocalhost >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
done
|
||||
# create database and user on mysql
|
||||
mysql -u root >/dev/null << 'EOF'
|
||||
CREATE DATABASE `php-crud-api` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
CREATE USER 'php-crud-api'@'localhost' IDENTIFIED BY 'php-crud-api';
|
||||
GRANT ALL PRIVILEGES ON `php-crud-api`.* TO 'php-crud-api'@'localhost' WITH GRANT OPTION;
|
||||
FLUSH PRIVILEGES;
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[2/4] Starting PostgreSQL 10.4 .. "
|
||||
# ensure statistics can be written
|
||||
mkdir /var/run/postgresql/10-main.pg_stat_tmp/ && chmod 777 /var/run/postgresql/10-main.pg_stat_tmp/
|
||||
# run postgres server
|
||||
nohup su - -c "/usr/lib/postgresql/10/bin/postgres -D /etc/postgresql/10/main" postgres > /root/postgres.log 2>&1 &
|
||||
# wait for postgres to become available
|
||||
until su - -c "psql -U postgres -c '\q'" postgres >/dev/null 2>&1; do
|
||||
sleep 1;
|
||||
done
|
||||
# create database and user on postgres
|
||||
su - -c "psql -U postgres >/dev/null" postgres << 'EOF'
|
||||
CREATE USER "php-crud-api" WITH PASSWORD 'php-crud-api';
|
||||
CREATE DATABASE "php-crud-api";
|
||||
GRANT ALL PRIVILEGES ON DATABASE "php-crud-api" to "php-crud-api";
|
||||
\c "php-crud-api";
|
||||
CREATE EXTENSION IF NOT EXISTS postgis;
|
||||
\q
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[3/4] Starting SQLServer 2017 ... "
|
||||
echo "skipped"
|
||||
|
||||
echo -n "[4/4] Cloning PHP-CRUD-API v2 ... "
|
||||
# install software
|
||||
if [ -d /php-crud-api ]; then
|
||||
echo "skipped"
|
||||
else
|
||||
git clone --quiet https://github.com/mevdschee/php-crud-api.git
|
||||
echo "done"
|
||||
fi
|
||||
|
||||
echo "------------------------------------------------"
|
||||
|
||||
# run the tests
|
||||
cd php-crud-api
|
||||
php test.php
|
||||
21
seatmap-webapi/docker/ubuntu20/Dockerfile
Normal file
21
seatmap-webapi/docker/ubuntu20/Dockerfile
Normal file
@@ -0,0 +1,21 @@
|
||||
FROM ubuntu:20.04
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# install: php / mysql / postgres / sqlite / tools
|
||||
RUN apt-get update && apt-get -y install \
|
||||
php-cli php-xml php-mbstring \
|
||||
mysql-server mysql-client php-mysql \
|
||||
postgresql php-pgsql \
|
||||
postgresql-12-postgis-3 \
|
||||
sqlite3 php-sqlite3 \
|
||||
git wget
|
||||
|
||||
# install locales
|
||||
RUN apt-get -y install locales
|
||||
RUN locale-gen en_US.UTF-8
|
||||
RUN update-locale LANG=en_US.UTF-8
|
||||
|
||||
# install run script
|
||||
ADD run.sh /usr/sbin/docker-run
|
||||
CMD docker-run
|
||||
60
seatmap-webapi/docker/ubuntu20/run.sh
Executable file
60
seatmap-webapi/docker/ubuntu20/run.sh
Executable file
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
echo "================================================"
|
||||
echo " Ubuntu 20.04 (PHP 7.4)"
|
||||
echo "================================================"
|
||||
|
||||
echo -n "[1/4] Starting MySQL 8.0 ........ "
|
||||
# make sure mysql can create socket and lock
|
||||
mkdir /var/run/mysqld && chmod 777 /var/run/mysqld
|
||||
# run mysql server
|
||||
nohup mysqld > /root/mysql.log 2>&1 &
|
||||
# wait for mysql to become available
|
||||
while ! mysqladmin ping -hlocalhost >/dev/null 2>&1; do
|
||||
sleep 1
|
||||
done
|
||||
# create database and user on mysql
|
||||
mysql -u root >/dev/null << 'EOF'
|
||||
CREATE DATABASE `php-crud-api` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
CREATE USER 'php-crud-api'@'localhost' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY 'php-crud-api';
|
||||
GRANT ALL PRIVILEGES ON `php-crud-api`.* TO 'php-crud-api'@'localhost' WITH GRANT OPTION;
|
||||
FLUSH PRIVILEGES;
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[2/4] Starting PostgreSQL 12.2 .. "
|
||||
# ensure statistics can be written
|
||||
mkdir /var/run/postgresql/10-main.pg_stat_tmp/ && chmod 777 /var/run/postgresql/10-main.pg_stat_tmp/
|
||||
# run postgres server
|
||||
nohup su - -c "/usr/lib/postgresql/12/bin/postgres -D /etc/postgresql/12/main" postgres > /root/postgres.log 2>&1 &
|
||||
# wait for postgres to become available
|
||||
until su - -c "psql -U postgres -c '\q'" postgres >/dev/null 2>&1; do
|
||||
sleep 1;
|
||||
done
|
||||
# create database and user on postgres
|
||||
su - -c "psql -U postgres >/dev/null" postgres << 'EOF'
|
||||
CREATE USER "php-crud-api" WITH PASSWORD 'php-crud-api';
|
||||
CREATE DATABASE "php-crud-api";
|
||||
GRANT ALL PRIVILEGES ON DATABASE "php-crud-api" to "php-crud-api";
|
||||
\c "php-crud-api";
|
||||
CREATE EXTENSION IF NOT EXISTS postgis;
|
||||
\q
|
||||
EOF
|
||||
echo "done"
|
||||
|
||||
echo -n "[3/4] Starting SQLServer 2017 ... "
|
||||
echo "skipped"
|
||||
|
||||
echo -n "[4/4] Cloning PHP-CRUD-API v2 ... "
|
||||
# install software
|
||||
if [ -d /php-crud-api ]; then
|
||||
echo "skipped"
|
||||
else
|
||||
git clone --quiet https://github.com/mevdschee/php-crud-api.git
|
||||
echo "done"
|
||||
fi
|
||||
|
||||
echo "------------------------------------------------"
|
||||
|
||||
# run the tests
|
||||
cd php-crud-api
|
||||
php test.php
|
||||
Reference in New Issue
Block a user