Appendix A - dockerfile_zixi_receiver.txt

# Get CentOS 7 Docker image FROM centos:7 # Variables – EDIT ME WITH PROPER VERSION ENV zixiversion 13.1.38648 # Copy Zixi installer to new image and extract files COPY zixi_receiver-linux64- ${zixiversion}.tar.gz . RUN tar -xvf zixi_receiver-linux64- ${zixiversion}.tar.gz # Copy files to proper folder RUN cp /zixi_receiver-linux64/scripts/centos7/* /zixi_receiver-linux64/ # Create link to executable with no version for ENTRYPOINT command RUN ln -s /zixi_receiver-linux64/zixi_receiver-${zixiversion} /zixi_receiver-linux64/zixi_receiver # Install necessary Linux packages RUN yum update -y RUN yum install -y net-tools net-snmp-utils iproute ethtool ntp initscripts # Informs Docker that the container listens on the specified ports # These are relevant ports for Receiver but some may not be necessary depending on use case # Ports that will be used need to published upon running the image for bridged mode # Some other ports may need to be added for RTP/UDP streams. # Web management UI, HTTP protocol EXPOSE 4300/TCP # Preinstall a config file which sets logs to be stored at /zixi_receiver-linux64/logs # and sets the port for the web UI # Other settings for default behavior could be added to the config file as well COPY receiver-config-template.xml zixi_receiver-linux64/receiver-config.xml # Create logs folder WORKDIR /zixi_receiver-linux64/logs # Set final working directory WORKDIR /zixi_receiver-linux64 # Set the executable to start when the container is run ENTRYPOINT ["./zixi_receiver", "--no-daemon"]