Tag: docker compose

不能用docker命令启动mongo,但是可以在容器内使用/ bin / bash(使用数据卷)

这个docker-compose.yml : services: database: image: mongo:3.2 ports: – "27017" command: "mongod –dbpath=/usr/database" networks: – backend volumes: – dbdata:/usr/database volumes: dbdata: 导致这个错误(剪切): database_1 | 2016-11-28T06:30:29.864+0000 I STORAGE [initandlisten] exception in initAndListen: 98 Unable to create/open lock file: /usr/database/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating 同样只是试图直接在使用该图像的容器中运行命令: $ docker run -v /usr/database mongo:3.2 mongod […]

使用docker-compose在现有的git repo Django项目上进行协作

我刚刚开始使用Docker,我想用它来容纳一个〜7协作者正在开发的Django项目,并且我希望我们中的一些人可以select使用Docker来加速Docker的入门过程。build立当地的发展环境。 我们正在使用的应用程序是一个Django应用程序,使用Postgres / PostGIS和一些其他依赖项。 到目前为止,我已经学习了这个教程 ,通过创build一个新的Django项目,并使用docker-compose将它放在容器中运行。 我的问题与使用docker-compose与许多其他人在现有的Django项目上合作的工作stream程有关。 如果我们使用Docker的人遵循本教程中所示的类似模式,而不是创build一个新项目,只需克隆存储库并按照教程进行操作即可? 对不起,如果这个问题没有意义。 我只是想知道我的用例是否适合docker工人/docker工作者,如果我提出的是合理的话。

如何防止数据库docker被重build并丢失生产数据

我喜欢在开发和生产环境中使用docker和docker-compose。 但在我的工作stream程中,我一直将docker工人视为一次性的 : 这意味着如果我需要添加一个function到我的docker,我编辑我的Dockerfile ,然后运行docker-compose build和docker-compose up -d docker-compose build Dockerfile完成。 但这一次,生产数据库也在Docker中。 我仍然需要在我的环境中进行一些更改(例如configuration备份),但是现在我不能重新运行docker-compose build因为这意味着所有数据都将丢失 。这意味着我需要inputdocker docker-compose run web /bin/bash ),然后运行里面的命令,同时将这些命令报告给我的本地Dockerfile以跟踪我的更改。 有关于这种情况的最佳做法吗? 我想在容器销毁之前设置一个将数据库转储到S3存储桶的过程,但是它并没有真正扩展到宽数据库。 我想让Docker不会被破坏(怎么样?),尽pipe这意味着丢失一个容器的可处置性。 我想有一个专门的分区, 只负责存储数据,在重builddocker时不会被破坏,尽pipe安装和解密都很困难。 所以呢? 谢谢

docker.env文件重复使用声明的variables

当我运行docker-compose构build时,我有一个.env文件用于在我的docker-machine上构build环境variables,如下所示: COMPOSE_PROJECT_NAME=radar ENV=production DB_NAME=postgres DB_USER=postgres DB_PASS=sho1c2ov3Phezaimah7eb2Tii4ohkah8k DB_SERVICE=postgres DB_PORT=5432 C_FORCE_ROOT="true" PGHOST=postgres PGDATABASE=postgres PGUSER=postgres PGPASSWORD=sho1c2ov3Phezaimah7eb2Tii4ohkah8k PGPORT=5432 如果你已经注意到像“DB_NAME”和“PGDATABASE”这样的冗余是一样的..有没有办法避免这种情况?

在python Docker容器中执行wait-for-it.sh

我有一个Pythondocker容器,需要等到另一个容器(postgres服务器)完成设置。 我尝试了标准的wait-for-it.sh,但没有包含几个命令。 我尝试了一个基本的睡眠(再次在一个sh文件中),但现在报告exec: 300: not found试图终于执行我正在等待的命令时exec: 300: not found 。 我如何解决这个问题(最好不要改变图像,或者不得不扩展图像)。 我知道我也可以运行一个Python脚本,但理想情况下,我想使用wait-for-it.sh来等待服务器启动而不只是睡眠。 Dockerfile(用于填充): FROM python:2.7.13 ADD ./stuff/bin /usr/local/bin/ ADD ./stuff /usr/local/stuff WORKDIR /usr/local/bin COPY requirements.txt /opt/updater/requirements.txt COPY internal_requirements.txt /opt/stuff/internal_requirements.txt RUN pip install -r /opt/stuff/requirements.txt RUN pip install -r /opt/stuff/other_requirements.txt 泊坞窗,compose.yml: version: '3' services: local_db: build: ./local_db ports: – "localhost:5432:5432" stuffer: build: ./ depends_on: – local_db […]

在wordpress docker中编辑默认的.htaccess

我有一个由docker-compose文件生成的wordpress容器。 WordPress容器默认包含.htaccess文件。 我想编辑这样的编辑只有一次创build容器时执行。

Docker和networking核心应用程序不起作用

我试图用Docker设置dotnet应用程序。 Dockerfile在“后端”文件夹中: FROM microsoft/dotnet:1.1-sdk AS build-env WORKDIR /app COPY *.csproj ./ RUN dotnet restore COPY . ./ RUN dotnet publish -c Release -o out FROM microsoft/dotnet:1.1-runtime WORKDIR /app COPY –from=build-env /app/out ./ CMD ["dotnet", "backend.dll"] 在“前端”文件夹中的Dockerfile: # build FROM node AS build-env WORKDIR /usr/src/app COPY package.json /usr/src/app/ RUN npm install COPY . /usr/src/app/ RUN npm […]

如何在Docker中使用dynamic生成的Nginxconfiguration文件?

我正在开发一个使用Nginx和ExpressJS(NodeJS)的应用程序,我正在使用Docker(使用docker-compose ) 我没有把应用程序保留在Docker中。 我的应用程序dynamic创buildNginxconfiguration。 最初,这些Nginxconfiguration被放置在我的应用程序中的一个标准目录中。 我已经configurationNginx从这个目录中读取所有的* .conf文件,一切都很好。 现在我正在使用Docker,我使用了两个不同的容器:一个用于Nginx,一个用于我的应用程序。 问:如何将生成的configuration文件从一个容器移动到另一个容器? 有没有更好的方法来实现这一目标?

docker集装箱之间的连接

我有一个docker-compose.yml,我创build了2个容器A和B. B是一个运行在端口8000上的web服务器,在我的docker-compose文件中我公开了8000端口 A在我的docker-compose-file中有一个到B的链接。 但是当我在B上发出一个GET请求时,我得到一个错误: GET http:// localhost:8000 dial tcp 127.0.0.1:8000拒​​绝 我该如何解决这个问题? docker-compose ps只是告诉我这个端口是8000 / tcp

问题与docker和捆绑

我正在用docker / docker-compose和bundler运行一些问题。 在构build映像后,我可以正确运行rails server ,但是,当我尝试使用rails console运行控制台时,我总是得到: Could not find i18n-0.7.0 in any of the sources Run `bundle install` to install missing gems. 如果我尝试在容器中运行bundle install没有问题,所有似乎都正确安装。 docker-compose run web bundle install … Using spring 1.3.6 Using therubyracer 0.12.2 Using turbolinks 2.5.3 Using uglifier 2.7.2 Using web-console 2.2.1 Updating files in vendor/cache Bundle complete! 24 Gemfile dependencies, […]