############################################################################### # Copyright (C) 2020 Simon Adlem, G7RZU # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ############################################################################### version: '2.4' services: freedmr: container_name: freedmr cpu_shares: 1024 mem_reservation: 600m volumes: - '/etc/freedmr/freedmr.cfg:/opt/freedmr/freedmr.cfg' #Write JSON files outside of container - '/etc/freedmr/json/:/opt/freedmr/json/' ports: - '62031:62031/udp' #Change the below to inlude ports used for your OBP(s) - '62041:62041/udp' image: 'gitlab.hacknix.net:5050/hacknix/freedmr:latest' restart: "unless-stopped" networks: app_net: ipv4_address: 172.16.238.10 #Control parameters inside container environment: #IPV6 support - FDPROXY_IPV6=0 #Display connection stats in log - FDPROXY_STATS=1 #Display conneting client info in log - FDPROXY_CLIENTINFO=1 #Debug HBP session in log (lots of data!!) - FDPROXY_DEBUG=0 #Override proxy external port #- FDPROXY_LISTENPORT=62031 read_only: "true" freedmrmonitor2: container_name: freedmrmonitor2 cpu_shares: 512 depends_on: - freedmr image: 'gitlab.hacknix.net:5050/freedmr/freedmrmonitor2/freedmrmonitor2:monitor-latest' restart: "unless-stopped" networks: app_net: ipv4_address: 172.16.238.20 read_only: "true" logging: driver: json-file freedmrmonpache: container_name: freedmrmonapache cpu_shares: 512 depends_on: - freedmrmonitor2 #where to store TLS certificates #and acme.sh files volumes: - '/etc/freedmr/certs/:/opt/apachecerts/' - '/etc/freedmr/acme.sh:/root/.acme.sh/' ports: - '80:80/tcp' - '443:443/tcp' image: 'gitlab.hacknix.net:5050/freedmr/freedmrmonitor2/freedmrmonitor2:apache-latest' restart: "unless-stopped" environment: #Set to 1 to enable TLS support #you'll need to actually generate the certtificates too #using these commands when the container is running: #docker exec -it freedmrmonapache gencert.sh #docker-compose restart freedmrmonapache #This only needs to be done once - unless the files in the volumes above are deleted. #The container will handle renewing the certificates every 60 days. #Note -the gencert.sh script only works when the webserver is available on the default port 80 #If it's on non-standard ports, you'll need to request the certificates manually. - 'USE_TLS=1' networks: app_net: ipv4_address: 172.16.238.30 logging: driver: json-file networks: app_net: driver: bridge ipam: driver: default config: - subnet: 172.16.238.0/24 gateway: 172.16.238.1