> [name=Lucas] > [time=Mon, May 22, 2023 11:36 AM] > [name=Lukas] > [time=Mon, May 22, 2023 11:36 AM] [color=#db4eae] # SQ06A ### dockerfile für mosquitto ```dockerfile FROM eclipse-mosquitto:latest COPY mosquitto.conf /mosquitto/config/mosquitto.conf EXPOSE 1883 CMD ["/usr/sbin/mosquitto", "-c", "/mosquitto/config/mosquitto.conf"] ``` #### dazu das config für mosquitto ```mosquitto.conf listener 1883 allow_anonymous true ``` #### Build Befehl: ```bash docker build -t mosquitto . ``` #### Run Befehl: ```bash docker run -d --net=m324-net --ip=172.21.0.22 -p 1887:1887 mosquitto ``` ### dockerfile für die Sensor App ```dockerfile FROM openjdk:18 WORKDIR /app COPY M321-APP.jar . CMD ["java", "-jar", "M321-APP.jar", "publisher3", "java3", "feedback/java3"] ``` #### Build Befehl: ```bash docker build -t app . ``` #### Run Befehl: ```bash docker run -d --net=321_dockerizing_m324-net --ip=172.21.0.21 app ``` --- # Docker Compose File und Komponente ```docker-compose.yml version: '3' services: mosquitto: image: eclipse-mosquitto:latest volumes: - ./mosquitto.conf:/mosquitto/config/mosquitto.conf networks: m324-net: ipv4_address: 172.21.0.22 ports: - "1887:1883" sensor-app: build: context: ./app dockerfile: Dockerfile networks: m324-net: ipv4_address: 172.21.0.21 networks: m324-net: driver: bridge ipam: config: - subnet: 172.21.0.0/16 ``` ## File Struktur <img src="https://hackmd.io/_uploads/BkvicJFHh.png" style="margin:2vh; filter:drop-shadow(0px 0px 5px black);"> ### Inhalt /app/dockerfile/ ```dockerfile FROM openjdk:18 WORKDIR /app COPY M321-APP.jar . CMD ["java", "-jar", "M321-APP.jar", "publisher3", "java3", "feedback/java3", "&&", "java", "-jar", "M321-APP.jar", "publisher2", "java2", "feedback/java2"] ``` ### Inhalt mosquitto.conf ```dockerfile listener 1883 allow_anonymous true ``` --- ## Starten des Stacks: ```bash docker compose up ``` <img src="https://hackmd.io/_uploads/BylJjyYH3.png" style="margin:2vh; filter:drop-shadow(0px 0px 5px black);"> <img src="https://hackmd.io/_uploads/rJfXhyYHn.png" style="margin:2vh; filter:drop-shadow(0px 0px 5px black);"> --- ###### Run befehl für den Docker Container um zusätzliche sensoren zu starten: ```bash java -jar M321-APP.jar publisher2 java2 feedback/java2 ```