首页 > 解决方案 > docker.compose 或 CMD 命令

问题描述

如何实现容器网络的正确版本,我使用以下命令从 CMD 手动运行:

docker run --name mysql --network springboot -e MYSQL_ROOT_PASSWORD=1234 -e MYSQL_DATABASE=rabbit_messages -d mysql: 最新

docker run --name rabbitmq --network springboot -d rabbitmq:3-management

docker run -p 8080:8080 --name springboot-app --network springboot -d springboot-app

和我的 Dockerfile 构建:

FROM openjdk:latest

ADD target/springboot-app.jar /springboot-app.jar

EXPOSE 8080

CMD ["java", "-jar", "/springboot-app.jar"]

当我从这个文件编写它时它失败了。这是我当前的 docker-compose.yml:

version: '3'

services:
  my-app:
    image: maxxxdj/springrabbitdb
    ports:
      - "8080:8080"
    depends_on:
      - rabbitmq
      - mysql
  rabbitmq:
    image: rabbitmq:3-management
    ports:
      - "5672:5672"
      - "15672:15672"
      -
  mysql:
    image: mysql
    ports:
      - "3306:3306"
    environment:
      - MYSQL_DATABASE=rabbit_messages
      - MYSQL_ROOT_PASSWORD=1234
      - MYSQL_PASSWORD=1234
    restart: on-failure

我想修复这个 docker-compose.yml ,它可以从一个文件中完成所有这些事情,每个人都可以从 Docker hub 运行它?

标签: docker-compose

解决方案


推荐阅读