Mein Compose-Yaml hat 3 Dienste Ich bin in der Lage, die Container erfolgreich auszuführen, wenn ich Docker-Compose verwenden. Nun möchte ich diese 3 Container in ein einziges Bild zu bauen. Ist es möglich? hier ist mein compose-yamlErstellen Sie ein einzelnes Bild basierend auf Docker Compose-Containern
version: '2'
services:
tomcat:
container_name: tomcatcomposejdk
build: .
image: 'apexits/ubuntu-oracle-jdk8-tomcat9'
ports:
- "8787:8080"
- "5003:5003"
networks:
b:
ipv4_address: 10.5.0.6
expose:
- "8787"
- "5003"
mysql:
container_name: mysqlcompose
build: .
image: 'mysql:5.6.36'
ports:
- "3306:3306"
expose:
- "3306"
networks:
b:
ipv4_address: 10.5.0.7
environment:
MYSQL_DATABASE: "bird251"
MYSQL_ROOT_PASSWORD: "root"
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
volumes:
- ./BIRD251.sql:/tmp/BIRD251.sql
- ./import.sh:/tmp/import.sh
elasticsearch:
container_name: escompose
build: .
image: 'elasticsearch:2.3.4'
ports:
- "9200:9200"
- "9300:9300"
expose:
- "9200"
- "9300"
networks:
b:
ipv4_address: 10.5.0.8
networks:
b:
driver: bridge
ipam:
config:
- subnet: 10.5.0.0/16
gateway: 10.5.0.1
Nicht empfohlen und wird offiziell nicht unterstützt. Stattdessen können Sie ein benutzerdefiniertes Dockker-Image erstellen, zum Beispiel mit 'apexits/ubuntu-oracle-jdk8-tomcat9' als Basis und Sie installieren und konfigurieren mysql und elasticsearch services, anstatt vollwertige Docker-Images zu mischen verursachen große Albträume. –