Skip to content

Commit 623fdbf

Browse files
authored
Updating docker-orchagent/syncd Dockerfile and start.sh (#9)
1 parent f19d445 commit 623fdbf

File tree

4 files changed

+48
-36
lines changed

4 files changed

+48
-36
lines changed

dockers/docker-orchagent/Dockerfile

+12-10
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,18 @@ FROM docker-base
22

33
RUN apt-get update
44

5-
COPY ["deps/libhiredis0.13*.deb", "deps/libswsscommon_*.deb", "deps/libsairedis_*.deb", "/deps/"]
6-
7-
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; dpkg_apt /deps/libhiredis0.13*.deb
8-
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; dpkg_apt /deps/libswsscommon_*.deb
9-
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; dpkg_apt /deps/libsairedis_*.deb
10-
11-
RUN apt-get install -f -y ifupdown bridge-utils
12-
13-
## Copy executable binaries
14-
COPY ["deps/orchagent","deps/swssconfig","deps/portsyncd","deps/intfsyncd","deps/neighsyncd","/usr/bin/"]
5+
COPY ["deps/libhiredis0.13*.deb", "deps/libnl-3-200_*.deb", "deps/libnl-genl-3-200_*.deb", "deps/libnl-route-3-200_*.deb", "deps/libswsscommon_*.deb", "deps/libsairedis_*.deb", "deps/swss_*.deb", "/deps/"]
6+
7+
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; \
8+
dpkg_apt /deps/libhiredis0.13*.deb \
9+
&& dpkg_apt /deps/libnl-3-200_*.deb \
10+
&& dpkg_apt /deps/libnl-genl-3-200_*.deb \
11+
&& dpkg_apt /deps/libnl-route-3-200_*.deb \
12+
&& dpkg_apt /deps/libswsscommon_*.deb \
13+
&& dpkg_apt /deps/libsairedis_*.deb \
14+
&& dpkg_apt /deps/swss_*.deb
15+
16+
RUN apt-get install -f -y ifupdown bridge-utils redis-tools
1517

1618
COPY start.sh /usr/bin/start.sh
1719

dockers/docker-orchagent/start.sh

+21-17
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,18 @@
11
#!/bin/bash
22

3+
function start_app {
4+
orchagent $ORCHAGENT_ARGS &
5+
portsyncd $PORTSYNCD_ARGS &
6+
intfsyncd &
7+
neighsyncd &
8+
swssconfig &
9+
}
10+
311
function clean_up {
4-
kill -9 $ORCHAGENT_PID
5-
kill -9 $PORTSYNCD_PID
6-
kill -9 $INTFSYNCD_PID
7-
kill -9 $NEIGHSYNCD_PID
12+
pkill -9 orchagent
13+
pkill -9 portsyncd
14+
pkill -9 intfsyncd
15+
pkill -9 neighsyncd
816
service rsyslog stop
917
exit
1018
}
@@ -27,16 +35,12 @@ elif [ "$onie_platform" == "x86_64-mlnx_x86-r5.0.1400" ]; then
2735
fi
2836

2937
service rsyslog start
30-
orchagent $ORCHAGENT_ARGS &
31-
ORCHAGENT_PID=$!
32-
sleep 5
33-
portsyncd $PORTSYNCD_ARGS &
34-
PORTSYNCD_PID=$!
35-
sleep 5
36-
intfsyncd &
37-
INTFSYNCD_PID=$!
38-
sleep 5
39-
neighsyncd &
40-
NEIGHSYNCD_PID=$!
41-
42-
read
38+
while true; do
39+
# Check if syncd starts
40+
result=`echo -en "SELECT 1\nHLEN HIDDEN" | redis-cli | sed -n 2p`
41+
if [ "$result" != "0" ]; then
42+
start_app
43+
read
44+
fi
45+
sleep 1
46+
done

dockers/docker-syncd-mlnx/Dockerfile

+6-3
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,12 @@ RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return
1717
&& dpkg_apt /deps/iproute2_*.deb \
1818
&& dpkg_apt /deps/mft*.deb \
1919

20-
&& dpkg_apt /deps/libhiredis0.13*.deb \
21-
&& dpkg_apt /deps/libswsscommon_*.deb \
22-
&& dpkg_apt /deps/mlnx-sai_*.deb \
20+
&& dpkg_apt /deps/libhiredis0.13*.deb \
21+
&& dpkg_apt /deps/libnl-3-200_*.deb \
22+
&& dpkg_apt /deps/libnl-genl-3-200_*.deb \
23+
&& dpkg_apt /deps/libnl-route-3-200_*.deb \
24+
&& dpkg_apt /deps/libswsscommon_*.deb \
25+
&& dpkg_apt /deps/mlnx-sai_*.deb \
2326
&& dpkg_apt /deps/libsairedis_*.deb
2427

2528
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; dpkg_apt /deps/syncd_*.deb

dockers/docker-syncd/Dockerfile

+9-6
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,17 @@ FROM docker-base
22

33
RUN apt-get update
44

5-
COPY ["deps/libhiredis0.13*.deb", "deps/libswsscommon_*.deb", "deps/libopennsl_*.deb", "deps/libsaibcm_*.deb", "deps/libsairedis_*.deb", "deps/syncd_*.deb", "/deps/"]
5+
COPY ["deps/libhiredis0.13*.deb", "deps/libnl-3-200_*.deb", "deps/libnl-genl-3-200_*.deb", "deps/libnl-route-3-200_*.deb", "deps/libswsscommon_*.deb", "deps/libopennsl_*.deb", "deps/libsaibcm_*.deb", "deps/libsairedis_*.deb", "deps/syncd_*.deb", "/deps/"]
66

77
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; \
8-
dpkg_apt /deps/libhiredis0.13*.deb \
9-
&& dpkg_apt /deps/libswsscommon_*.deb \
10-
&& dpkg_apt /deps/libopennsl_*.deb \
11-
&& dpkg_apt /deps/libsaibcm_*.deb \
12-
&& dpkg_apt /deps/libsairedis_*.deb \
8+
dpkg_apt /deps/libhiredis0.13*.deb \
9+
&& dpkg_apt /deps/libnl-3-200_*.deb \
10+
&& dpkg_apt /deps/libnl-genl-3-200_*.deb \
11+
&& dpkg_apt /deps/libnl-route-3-200_*.deb \
12+
&& dpkg_apt /deps/libswsscommon_*.deb \
13+
&& dpkg_apt /deps/libopennsl_*.deb \
14+
&& dpkg_apt /deps/libsaibcm_*.deb \
15+
&& dpkg_apt /deps/libsairedis_*.deb \
1316
&& dpkg_apt /deps/syncd_*.deb
1417

1518
## TODO: add kmod into Depends

0 commit comments

Comments
 (0)