【问题标题】:How to put an existing container in docker-compose?如何将现有容器放入 docker-compose?
【发布时间】:2021-09-07 12:45:09
【问题描述】:

我已经有一个容器化并运行的 vue 应用程序,但是如何将它放入 docker compose 中?

Dockerfile:

FROM node:14

WORKDIR /app

RUN  npm install @babel/core @babel/node @babel/preset-env nodemon express axios cors mongodb

COPY . .

EXPOSE 4200

CMD ["npm", "run", "serve"]

所以当我尝试输入端口“4200”时,它表示我已经在运行相同的端口,那么如何将该容器放入将存储多个容器的整个应用程序中?

这是我的 docker-compose 尝试:

version: '3.8'
services: 
  posts:
    build: ./posts
    ports: 
      - "4200:4200"

所以这是我想做的事情的可视化:

【问题讨论】:

  • 停止并删除现有容器,或按^C 停止应用程序的本地开发副本。
  • 好的,这也是一个很好的解决方案!谢谢,顺便说一句,这可行,但我在其他微服务之间的 axios 通信不起作用,这是 docker compose 中需要的吗?

标签: docker docker-compose containers


【解决方案1】:

在 compose 中更改主机端口

例如:

ports: 

  - "4201:4200"

【讨论】:

  • 谢谢!正是我想要的。
  • 另一个与这个问题无关的问题,如果我对我的 dockerized 应用程序进行新的更改,它们会改变吗?还是我必须重复构建过程?
猜你喜欢
  • 1970-01-01
  • 2015-08-17
  • 2022-11-13
  • 2020-03-01
  • 2018-01-20
  • 1970-01-01
  • 1970-01-01
  • 2019-04-14
  • 1970-01-01
相关资源
最近更新 更多