mirror of
git://code.qt.io/qt/qt5.git
synced 2026-04-13 00:35:55 +08:00
Docker Provisioning: Install Avahi and enable mDNS service discovery
The challenge of connecting Docker containers from the host is to resolve a predefined hostname to an IP address assigned at runtime. For Unix-like platforms such as Ubuntu, it can be done by either hard-code the IP addresses or creating a DNS server. Both of them are not user-friendly which need root permission to modify system files. Avahi is a free Zeroconf implementation and provides multicast DNS (mDNS) service discovery. It enables Docker containers to publish their services on a local network. For the host systems supporting mDNS technology, they will automatically discover the services in a local domain without extra user-efforts. Task-number: QTQAINFRA-1686 Change-Id: I1ef464a455cef5d331a3e2eb0194e2741172ef95 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Ryan Chu <ryan.chu@qt.io> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
FROM ubuntu:16.04
|
||||
RUN apt-get update && apt-get install -y apache2 libcgi-session-perl wget
|
||||
RUN apt-get update && apt-get install -y apache2 libcgi-session-perl wget avahi-daemon
|
||||
EXPOSE 80 443
|
||||
|
||||
# install configurations and test data
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
FROM ubuntu:16.04
|
||||
RUN apt-get update && apt-get install -y gdebi-core=0.9.5.7ubuntu1 wget
|
||||
RUN apt-get update && apt-get install -y gdebi-core=0.9.5.7ubuntu1 wget avahi-daemon
|
||||
RUN wget http://ppa.launchpad.net/dajhorn/dante/ubuntu/pool/main/d/dante/dante-server_1.4.1-1_amd64.deb
|
||||
RUN gdebi -n dante-server_1.4.1-1_amd64.deb
|
||||
EXPOSE 1080-1081
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
FROM ubuntu:16.04
|
||||
RUN apt-get update && apt-get install -y ftp-proxy=1.9.2.4-10
|
||||
RUN apt-get update && apt-get install -y ftp-proxy=1.9.2.4-10 avahi-daemon
|
||||
EXPOSE 2121
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
FROM ubuntu:16.04
|
||||
RUN apt-get update && apt-get install -y squid=3.5.12-1ubuntu7.5
|
||||
RUN apt-get update && apt-get install -y squid=3.5.12-1ubuntu7.5 avahi-daemon
|
||||
EXPOSE 3128-3130
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
FROM ubuntu:16.04
|
||||
RUN apt-get update && apt-get install -y vsftpd=3.0.3-3ubuntu2 ftp=0.17-33 wget
|
||||
RUN apt-get update && apt-get install -y vsftpd=3.0.3-3ubuntu2 ftp=0.17-33 wget avahi-daemon
|
||||
EXPOSE 20-21
|
||||
|
||||
# install configurations and test data
|
||||
|
||||
@@ -48,15 +48,5 @@ sudo docker info
|
||||
sudo curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
|
||||
sudo chmod +x /usr/local/bin/docker-compose
|
||||
|
||||
# Append address and hostname of test servers to CI environment.
|
||||
cat <<EOF | sudo tee -a /etc/hosts
|
||||
# Docker-based network test servers
|
||||
172.18.0.2 apache2.test-net.qt
|
||||
172.18.0.3 squid.test-net.qt
|
||||
172.18.0.4 vsftpd.test-net.qt
|
||||
172.18.0.5 ftp-proxy.test-net.qt
|
||||
172.18.0.6 danted.test-net.qt
|
||||
EOF
|
||||
|
||||
# Start testserver provisioning
|
||||
source "${BASH_SOURCE%/*}/../common/linux/testserver/docker_testserver.sh"
|
||||
|
||||
Reference in New Issue
Block a user