Dockerfile.debian11 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. FROM debian:bullseye
  2. RUN groupadd -r mysql && useradd -r -g mysql mysql
  3. RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install --assume-yes apt-utils \
  4. autoconf gcc g++ make procps \
  5. coreutils exuberant-ctags curl gawk gdb git jq lynx netcat ngrep sed sip-tester vim wget \
  6. bison libtool \
  7. debhelper \
  8. default-libmysqlclient-dev \
  9. docbook-xml \
  10. docbook2x \
  11. dpkg-dev \
  12. erlang-dev \
  13. flex \
  14. libbson-dev \
  15. libconfuse-dev \
  16. libcurl4-openssl-dev \
  17. libdb-dev \
  18. libev-dev \
  19. libevent-dev \
  20. libexpat1-dev \
  21. libgeoip-dev \
  22. libhiredis-dev \
  23. libjansson-dev \
  24. libjson-c-dev \
  25. libldap2-dev \
  26. liblua5.1-0-dev \
  27. libmaxminddb-dev \
  28. libmemcached-dev \
  29. libmnl-dev \
  30. libmongoc-dev \
  31. libmono-2.0-dev \
  32. libmosquitto-dev \
  33. libncurses5-dev \
  34. libpcre3-dev \
  35. libperl-dev \
  36. libphonenumber-dev \
  37. libpq-dev \
  38. librabbitmq-dev \
  39. libradcli-dev \
  40. libreadline-dev \
  41. librdkafka-dev \
  42. libsasl2-dev \
  43. libsctp-dev \
  44. libsnmp-dev \
  45. libsqlite3-dev \
  46. libssl-dev \
  47. libsystemd-dev \
  48. libunistring-dev \
  49. libxml2-dev \
  50. libwebsockets-dev \
  51. lua-cjson \
  52. openssl \
  53. pkg-config \
  54. python \
  55. python-dev \
  56. python3-dev \
  57. ruby-dev \
  58. unixodbc-dev \
  59. uuid-dev \
  60. xsltproc \
  61. zlib1g-dev
  62. ENV MYSQL_ROOT_PASSWORD=ktestsrootpw
  63. RUN DEBIAN_FRONTEND=noninteractive apt-get install --assume-yes default-mysql-client default-mysql-server
  64. RUN rm -rf /var/lib/mysql && mkdir -p /var/lib/mysql /var/run/mysqld \
  65. && chown -R mysql:mysql /var/lib/mysql /var/run/mysqld \
  66. && chmod 777 /var/run/mysqld \
  67. && find /etc/mysql/ -name '*.cnf' -print0 \
  68. | xargs -0 grep -lZE '^(bind-address|log)' \
  69. | xargs -rt -0 sed -Ei 's/^(bind-address|log)/#&/' \
  70. && echo '[mysqld]\nskip-host-cache\nskip-name-resolve' > /etc/mysql/conf.d/docker.cnf
  71. RUN mysql_install_db --user=mysql
  72. WORKDIR /usr/local/src
  73. RUN git clone https://github.com/nils-ohlmeier/sipsak
  74. WORKDIR /usr/local/src/sipsak
  75. RUN autoreconf --install
  76. RUN ./configure
  77. RUN make
  78. RUN make install
  79. # RUN mkdir -p /usr/local/src/data/GeoLite2
  80. # RUN mkdir -p /usr/local/src/tmp
  81. # COPY GeoLite2-City.tar.gz /usr/local/src/tmp/GeoLite2-City.tar.gz
  82. # WORKDIR /usr/local/src/tmp
  83. # RUN tar xvfz GeoLite2-City.tar.gz
  84. # RUN mv GeoLite2-City_*/*.* ../data/GeoLite2/
  85. # WORKDIR /usr/local/src
  86. # RUN rm -rf tmp
  87. COPY kamailio /usr/local/src/kamailio
  88. WORKDIR /usr/local/src/kamailio
  89. RUN git submodule update --init --remote misc/external/wolfssl/wolfssl
  90. RUN make RADCLI=1 exclude_modules="db_cassandra db_oracle dnssec ndb_cassandra nsq osp app_java rtp_media_server secsipid secsipid_proc stirshaken jwt nats ruxc microhttpd" cfg
  91. RUN make RADCLI=1 Q=0 CC_EXTRA_OPTS="-Wall" all
  92. RUN make RADCLI=1 install
  93. WORKDIR src/modules/tls
  94. RUN make install-tls-cert
  95. ENV DBENGINE=MYSQL
  96. ENV DBRWPW=kamailiorw
  97. ENV DBROOTPW=ktestsrootpw
  98. RUN pwd
  99. RUN ls -la /usr/local/src
  100. COPY kamailio-tests /usr/local/src/kamailio-tests
  101. COPY kamailio-tests/etc/excludeunits.txt.debian10 /usr/local/src/kamailio-tests/excludeunits.txt
  102. RUN ls -la /usr/local/src/kamailio-tests
  103. RUN ls -la /usr/local/src/kamailio-tests/units
  104. WORKDIR /usr/local/src/kamailio-tests
  105. ENTRYPOINT ["/usr/local/src/kamailio-tests/ktestsctl"]
  106. CMD ["-m", "run"]