summaryrefslogtreecommitdiffstats
path: root/fuel/build/f_odl_docker/puppet/modules/opnfv/scripts/stage_odl.sh
blob: fa14b47d4700a735137a593d312f81949b8be13f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash
#   Author: Daniel Smith (Ericsson)
#   Stages ODL Controlleer
#   Inputs:  odl_docker_image.tar
#   Usage:  ./stage_odl.sh

# ENVS
source ~/.bashrc
source ~/openrc

LOCALPATH=/opt/opnfv/odl
DOCKERBIN=docker-latest
ODLIMGNAME=odl_docker_image.tar
DNS=8.8.8.8
HOST_IP=`ifconfig br-ex | grep -i "inet addr" | awk -F":" '{print $2}' | awk -F" " '{print $1}'`



# DEBUG ECHOS
echo $LOCALPATH
echo $DOCKERBIN
echo $ODLIMGNAME
echo $DNS
echo $HOST_IP


# Set DNS to someting external and default GW - ODL requires a connection to the internet
sed -i -e 's/nameserver 10.20.0.2/nameserver 8.8.8.8/g' /etc/resolv.conf
route delete default gw 10.20.0.2
route add default gw 172.30.9.1

# Start Docker daemon and in background
echo "Starting Docker"
chmod +x $LOCALPATH/$DOCKERBIN
$LOCALPATH/$DOCKERBIN -d &
#courtesy sleep for virtual env
sleep 2

# Import the ODL Container
echo "Importing ODL Container"
$LOCALPATH/$DOCKERBIN load -i $LOCALPATH/$ODLIMGNAME

# Start ODL, load DLUX and OVSDB modules
echo "Removing any old install found - file not found is ok here"
$LOCALPATH/$DOCKERBIN rm odl_docker
echo "Starting up ODL controller in Daemon mode - no shell possible"
$LOCALPATH/$DOCKERBIN  run --name odl_docker -p 8181:8181 -p 8185:8185 -p 9000:9000 -p 1099:1099 -p 8101:8101 -p 6633:6633 -p 43506:43506 -p 44444:44444 -p 6653:6653 -p 12001:12001 -p 6400:6400 -p 6640:6640 -p 8080:8080 -p 7800:7800 -p 55130:55130 -p 52150:52150 -p 36826:26826 -i -d -t loving_daniel

# Following, you should see the docker ps listed and a port opened
echo " you should reach ODL controller at http://HOST_IP:8181/dlux/index.html"
$LOCALPATH/$DOCKERBINNAME ps -a
netstat -lnt