87 lines
1.8 KiB
Bash
Executable File
87 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# update .NET
|
|
|
|
REBUILD=false
|
|
|
|
vars=$(getopt -o r -l rebuild -- "$@")
|
|
if [ $? -ne 0 ]; then
|
|
|
|
echo "usage: docker-build [--rebuild]"
|
|
exit
|
|
|
|
fi
|
|
|
|
eval set -- $vars
|
|
|
|
for opt; do
|
|
case "$opt" in
|
|
-r|--rebuild)
|
|
REBUILD=true
|
|
shift
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if [ "$REBUILD" == "true" ]; then
|
|
pushd ../mocha-dotnet/mocha-dotnet/src/app/Mocha.Oms.Server
|
|
dotnet build
|
|
Q=$?
|
|
popd
|
|
|
|
if [ $Q -ne 0 ]; then
|
|
echo "Build failed!"
|
|
exit $Q
|
|
fi
|
|
|
|
# build the libraries
|
|
pushd mocha-common/mocha-common
|
|
./build
|
|
Q=$?
|
|
popd
|
|
|
|
if [ $Q -ne 0 ]; then
|
|
|
|
echo "Build failed!"
|
|
exit $Q
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
if [ ! -d ./mocha-suv/docker/fs/usr/lib/mocha/oms ]; then
|
|
mkdir -p ./mocha-suv/docker/fs/usr/lib/mocha/oms
|
|
fi
|
|
|
|
cp -r ../mocha-dotnet/mocha-dotnet/src/app/Mocha.Oms.Server/bin/Debug/net8.0/* ./mocha-suv/docker/fs/usr/lib/mocha/oms
|
|
|
|
if [ ! -d ./mocha-suv/docker/fs/usr/share/mocha/system ]; then
|
|
mkdir -p ./mocha-suv/docker/fs/usr/share/mocha/system
|
|
fi
|
|
cp mocha-common/mocha-common/output/net.alcetech.Mocha.System.mcl ./mocha-suv/docker/fs/usr/share/mocha/system
|
|
cp mocha-common/mocha-common/output/net.alcetech.Mocha.Web.mcl ./mocha-suv/docker/fs/usr/share/mocha/system
|
|
|
|
# build the image (i.e. 'mocha suv init' )
|
|
docker build -t mocha-httpd -f mocha-suv/docker/Dockerfile .
|
|
|
|
if [ $? -ne 0 ]; then
|
|
|
|
echo "'docker build' failed; is it properly installed?"
|
|
exit 2
|
|
|
|
fi
|
|
|
|
NETWORK_NAME=mocha-docker
|
|
NETWORK_SUBNET=10.7
|
|
|
|
NETWORK_EXISTS=$(docker network ls | grep $NETWORK_NAME)
|
|
if [ "$NETWORK_EXISTS" == "" ]; then
|
|
|
|
docker network create --driver=bridge --subnet=$NETWORK_SUBNET.0.0/16 --ip-range=$NETWORK_SUBNET.0.0/24 --gateway=$NETWORK_SUBNET.0.1 $NETWORK_NAME
|
|
|
|
fi
|
|
|
|
# initiate a container (i.e. 'mocha suv up i-0...' )
|
|
# docker run --name $SUV_NAME -d -p 8000:80 --net mocha-docker mocha-httpd # -p 8000:80 mocha-httpd
|
|
|