Commit f96f822a authored by yangjian's avatar yangjian

add docker

parent 82404287
#!/bin/bash
THIS_SCRIPT_PATH=$(dirname $(readlink -f $0))
echo "$THIS_SCRIPT_PATH"
source ${THIS_SCRIPT_PATH}/build_install_package.sh
function build_docker()
{
docker build -t ausf:v1.0 -f ${THIS_SCRIPT_PATH}/../../docker/Dockerfile $1/
if [[ $? -eq 0 ]]; then
return 0
else
return 1
fi
}
function main()
{
local -i apk=0
local -i docker=0
until [ -z "$1" ]
do
case "$1" in
-g | --generate-type)
if [ "$2" == "Apk" ]; then
apk=1
elif [ "$2" == "Docker" ]; then
apk=1
docker=1
else
echo "Unknown option \"Apk\" Or \"Docker\""
return 1
fi
shift 2;
;;
*)
echo "Unknown option $1"
return 1
;;
esac
done
if [ $apk -ne 0 ]; then
echo "Generating a green installation package"
generate_install_package ${THIS_SCRIPT_PATH}/../AUSF/ausf ${THIS_SCRIPT_PATH}/../../etc/ausf_docker.conf ${THIS_SCRIPT_PATH}/../ausf-install-packer
if [[ $? -eq 0 ]]; then
echo "Green installation package was generated successfully"
else
echo "Green installation package generation failed"
return 0
fi
fi
if [ $docker -ne 0 ]; then
echo "Creating a Docker image"
build_docker ${THIS_SCRIPT_PATH}/../ausf-install-packer
if [[ $? -eq 0 ]]; then
echo "Docker image created successfully"
else
echo "Docker image creation failed"
return 0
fi
fi
}
main "$@"
#!/bin/bash
function generate_install_package()
{
local lib_dir=""
local libs_dir=""
local res=""
local res_new=""
local result=false
echo "[Executable File]$1"
echo "[Config File] $2"
echo "[Generate Dir] $3"
if [ -n "$1" ] && [ -n "$2" ] && [ -n "$3" ]; then
if [ -f "$1" ] && [ -f "$2" ];then
res="$(ldd $1)"
for ((i=1; i<=100; i++))
do
res_new="${res#*/}"
if [ "$res_new" == "$res" ]; then
result=true
break
fi
lib_dir="/${res_new%%(*} "
libs_dir+="$lib_dir "
res="${res_new#* }"
done
else
echo "\"$1\" Or \"$2\" does not exist!"
fi
if [ $result == true ]; then
if [ -d "$3" ]; then
rm -r $3
fi
mkdir $3 $3/libs
cp $libs_dir $3/libs/
cp $1 $3
cp $2 $3/default.conf
cd $3
cat>start.sh<<EOF
#!/bin/bash
cd \`dirname \$0\`
ROOT_DIR=\$(pwd)
if [ -f "\$ROOT_DIR/external.conf" ]; then
echo -e "\E[33mUsing external configuration \E[00m"
\$ROOT_DIR/libs/ld-linux-x86-64.so.2 --library-path \$ROOT_DIR/libs/ \$ROOT_DIR/$(basename $1) -c \$ROOT_DIR/external.conf -o
else
echo -e "\E[33mUsing default configuration \E[00m"
\$ROOT_DIR/libs/ld-linux-x86-64.so.2 --library-path \$ROOT_DIR/libs/ \$ROOT_DIR/$(basename $1) -c \$ROOT_DIR/default.conf -o
fi
EOF
chmod 777 start.sh
return 0
else
echo "Extract library failed!"
return 1
fi
else
echo "$0 [Executable File] [Config File] [Generate Dir]"
fi
}
#generate_install_package "$@"
FROM ubuntu:18.04
ADD . /opt/5gc/ausf
RUN apt-get update -y && \
apt-get install --no-install-recommends -y net-tools vim inetutils-ping && \
mkdir /opt/5gc/log
EXPOSE 8383
CMD ["/opt/5gc/ausf/start.sh"]
## amf configuration file
AUSF =
{
INSTANCE_ID = 10; #10
PID_DIRECTORY = "/var/run";
######################################################################## NG SETUP RESPONSE IEs ############################################################
AUSF_NAME = "bupt-ausf";
# GUAMI:{MCC = "110"; MNC = "11"; RegionID = "128"; AMFSetID = "4"; AMFPointer = "1"}
# SERVED_GUAMI_LIST = (
# {MCC = "110"; MNC = "11"; RegionID = "10"; AMFSetID = "1"; AMFPointer = "0"}, #48bits <MCC><MNC><RegionID><AMFSetID><AMFPointer>
# {MCC = "110"; MNC = "11"; RegionID = "10"; AMFSetID = "1"; AMFPointer = "1"} #48bits <MCC><MNC><RegionID><AMFSetID><AMFPointer>
# );
# RELATIVE_CAPACITY = 30;
# PLMN_SUPPORT_LIST = (
# {MCC = "110"; MNC = "11"; TAC = 100;
# SLICE_SUPPORT_LIST = (
# {SST = "1"; SD = "none"},
# {SST = "1"; SD = "12"}
# )
# }
# );
##################################################################### clause 9.2.6.2, 3gpp ts38.413 ####################################################
#STATISTICS_TIMER_INTERVAL = 20; #second
INTERFACES:{
SBI_AUSF:{
INTERFACE_NAME = "eth0"; #interface for providing ausf service
IPV4_ADDRESS = "read"; #"192.168.61.141/24"; #address for intercafe (cidr)
PORT = 8383; #ausf service port
PPID = 60;
};
NUDM:{
INTERFACE_NAME = "eth0"; #interface for providing udm service
IPV4_ADDRESS = "172.16.200.12/24"; #address for intercafe (cidr)
PORT = 8181; #udm service port
#PPID = 60;
};
NAMF:{
INTERFACE_NAME = "eth0"; #interface for request for amf service
IPV4_ADDRESS = "172.16.200.14/24"; #amf address (cidr)
PORT = 8383; #amf port
};
# NUDR:{
# INTERFACE_NAME = "ens33"; #interface for request for udr service
# IPV4_ADDRESS = "192.168.21.133/24"; #udr address (cidr)
# PORT = 8080; #udr port
# VERSION = "v2";
# };
};
# CORE_CONFIGURATION:{
# EMERGENCY_SUPPORT = "false";
# };
# AUTHENTICATION:{
# MYSQL_server = "127.0.0.1";
# MYSQL_user = "bupt"; # Database server login
# MYSQL_pass = "linux"; # Database server password
# MYSQL_db = "OAI_DB";
# OPERATOR_key = "1006020f0a478bf6b699f15c062e42b3"; # op
# RANDOM = "true";
# };
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment