查看: 103|回复: 0

自己制作EVE-NG可用的docker镜像

3

主题

56

回帖

1175

积分

高级会员

Rank: 4

积分
1175

这里举两个例子,都是基于alpine linux镜像制作的,优点是非常小,自带常用网络相关命令,使用方便。

注意:在EVE-NG中使用,需要PRO版本。

1.iperf3

iperf3是一个打流工具,用于网络性能测试。

1.编写Dockerfile

vi Dockerfile
​
FROM alpine:3.23.3
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories \
    && apk update \
    && apk add iperf3 \
    && apk cache clean
EXPOSE 5201/tcp
CMD ["sleep", "infinity"]
​
​

2.生成镜像

#注意最后的空格和点
docker build  --network=host -t iperf3:3.19.1 .
​

3.导出镜像

docker save iperf3:3.19.1 -o iperf3__3.19.1.tar

2.bgp_simple

bgp_simple是一个以bgp协议向路由器注入路由的工具,基于perl编写。bgp_simple_4byteAS是修改后支持4字节AS号的版本。

./bgp_simple.pl -myas 100 -myip 172.172.1.241 -peerip 172.172.0.50 -peeras 100 -p isp_simple
​
-myas 100  #本机AS号
-myip 172.172.1.241  #本机IP
-peerip 172.172.0.50  #对端IP
-peeras 100  #对端AS号
-p isp_simple  #需要注入的路由文件,格式如下
​
root@eve-ng:~/docker-image/bgp_simple# cat isp_simple 
TABLE_DUMP2|1453305600|B|202.249.2.185|25152|1.1.8.0/24|25152 2914 4134|IGP|202.249.2.185|0|0|2914:420 2914:1408 2914:2401 2914:3400|NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.1.8.0/24|2497 4134|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.12.0.0/14|2497 4134 4847 18245|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.185|25152|1.12.0.0/14|25152 2914 4134 4847 18245|IGP|202.249.2.185|0|0|2914:420 2914:1408 2914:2401 2914:3400|NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.18.128.0/24|2497 4134 4847 24151 23596|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.185|25152|1.18.128.0/24|25152 6939 4134 4847 24151 23596|IGP|202.249.2.185|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.185|25152|1.48.0.0/15|25152 2914 4134|IGP|202.249.2.185|0|0|2914:420 2914:1408 2914:2401 2914:3400|NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.48.0.0/15|2497 4134|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.185|25152|1.50.0.0/16|25152 2914 4134|IGP|202.249.2.185|0|0|2914:420 2914:1408 2914:2401 2914:3400|NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.50.0.0/16|2497 4134|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.51.144.0/20|2497 4134 4538|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.51.160.0/21|2497 4134 4538|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.51.168.0/21|2497 4134 4538|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.51.176.0/20|2497 4134 4538|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.51.192.0/18|2497 4134 4538|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.55.9.0/24|2497 4134 18403|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.55.123.0/24|2497 4134 18403|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.55.185.0/24|2497 4134 18403|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.55.202.0/24|2497 4134 18403|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.55.222.0/24|2497 4134 18403|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.55.226.0/24|2497 4134 18403|IGP|202.249.2.169|0|0||NAG||
TABLE_DUMP2|1453305600|B|202.249.2.169|2497|1.55.228.0/24|2497 4134 18403|IGP|202.249.2.169|0|0||NAG||

1.准备好相关文件

wget https://cpan.metacpan.org/authors/id/S/SS/SSCHECK/Net-BGP-0.18.tar.gz
tar -xf Net-BGP-0.18.tar.gz
chmod 755 *.pl
chmod 755 *.sh
​
root@eve-ng:~/docker-image/bgp_simple# ls -lh
total 144K
-rwxr-xr-x 1 root root  21K Jul 20  2025 bgp_simple_4byteAS1.pl
-rwxr-xr-x 1 root root  22K Jul 20  2025 bgp_simple_4byteAS.pl
-rwxr-xr-x 1 root root  21K Jan 21  2016 bgp_simple.pl
-rw-r--r-- 1 root root  347 Feb  4 16:18 Dockerfile
-rw-r--r-- 1 root root 2.4K Feb  4 15:59 isp_simple
drwxr-xr-x 4 root root 4.0K Dec  2  2021 Net-BGP-0.18
-rw-r--r-- 1 root root  55K Dec  3  2021 Net-BGP-0.18.tar.gz
-rwxr-xr-x 1 root root   93 Feb  4 16:13 run_bgp_simple.sh

2.编写Dockerfile

FROM alpine:3.23.3
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories \
    && apk update \
    && apk add perl \
    && apk cache clean 
ADD Net-BGP-0.18/lib/ /usr/local/lib/perl5/site_perl/
ADD bgp_simple.pl bgp_simple_4byteAS.pl bgp_simple_4byteAS1.pl isp_simple run_bgp_simple.sh /root/
CMD ["sleep", "infinity"]

3.生成镜像

docker build  --network=host -t bgp_simple:0.12 .
​
root@eve-ng:~/docker-image/bgp_simple# docker build  --network=host -t bgp_simple:0.12 .
DEPRECATED: The legacy builder is deprecated and will be removed in a future release.
            Install the buildx component to build images with BuildKit:
            https://docs.docker.com/go/buildx/
​
Sending build context to Docker daemon  385.5kB
Step 1/5 : FROM alpine:3.23.3
 ---> a40c03cbb81c
Step 2/5 : RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories     && apk update     && apk add perl     && apk cache clean
 ---> Using cache
 ---> 233a3b88b21d
Step 3/5 : ADD Net-BGP-0.18/lib/ /usr/local/lib/perl5/site_perl/
 ---> Using cache
 ---> 104e8c8a9037
Step 4/5 : ADD bgp_simple.pl bgp_simple_4byteAS.pl bgp_simple_4byteAS1.pl isp_simple run_bgp_simple.sh /root/
 ---> dded2bfae31e
Step 5/5 : CMD ["sleep", "infinity"]
 ---> Running in 171ac9ca3132
 ---> Removed intermediate container 171ac9ca3132
 ---> 280471d4f450
Successfully built 280471d4f450
Successfully tagged bgp_simple:0.12

4.导出镜像

docker save bgp_simple:0.12 -o bgp_simple__0.12.tar
回复

使用道具 举报

本版积分规则

Copyright   ©2015-2026  EmulatedLab  Powered by Discuz!©   ( 浙ICP备2021010423号-1 )
快速回复 返回列表 返回顶部