注意:这个问题是在更新 docker 文档之前创建的(这就是它们更新的原因 - 请参阅此答案)。请不要发布指出差异的文档的答案:-)
我一直在使用docker-compose,但注意到还有一个docker compose(没有破折号)。
我无法通过谷歌搜索快速确定两种形式之间的差异。
任何人?
docker compose的帮助:
docker-compose的帮助:
docker并且docker-compose似乎与同一个dockerFile进行交互,两个工具之间有什么区别?
我是否需要为复杂的Web应用程序使用单独的Docker容器,或者我可以将所有必需的服务放在一个容器中?任何人都可以解释我为什么我应该将我的应用程序分成多个容器(例如php-fpm容器,mysql容器,mongo容器),因为我有能力在一个容器中安装和启动所有东西?
我有一个用 Django 编写的应用程序,我试图在 Digital Ocean 液滴上的 docker 中运行它。目前我有两个文件。
任何人都可以建议如何摆脱docker-compose.yml文件并将所有命令集成到Dockerfile???
文件
FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY . /code/
RUN pip install -r reqirements.txt
RUN python /code/jk/manage.py collectstatic --noinput
Run Code Online (Sandbox Code Playgroud)
docker-compose.yml
version: '3'
services:
web:
build: .
command: python jk/manage.py runserver 0.0.0.0:8081
volumes:
- .:/code
ports:
- "8081:8081"
Run Code Online (Sandbox Code Playgroud)
我运行我的应用程序和 docker 镜像,如下所示:
docker-compose run web python jk/manage.py migratedocker-compose up输出:
Starting workspace_web_1 ...
Starting workspace_web_1 ... done
Attaching to workspace_web_1
web_1 | …Run Code Online (Sandbox Code Playgroud) 我有一个在本地开发中运行的项目,使用 docker-compose
作为 gitlab 和部署的组织要求的一部分,应用程序需要构建到单个 Docker 映像中。
我知道这可以通过向Dockerfile项目添加 a来完成。
但是,我想知道是否有任何关于如何将通过docker-compose应用程序代码库运行多个服务的项目包含到Dockerfile用于部署的单个映像中的建议或建议,谢谢。
编辑:据我所知,该方法是使用 Dockerfile 从应用程序代码库构建一个新映像,然后将其包含在docker-compose.yml部署环境的文件中?
编辑 2:对混淆表示歉意。我是 Docker 的新手,有一点学习曲线!在这种情况下,似乎可以在 gitlab 注册表中构建应用程序映像,然后将该映像包含在 docker-compose 中进行部署,可以尝试一下。