问题标签 [fig]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1473 浏览

docker - 重新启动运行 supervisord 程序的 docker 会保留 pid 文件并在重新启动时导致错误

我有一个通过 supervisord 运行 django celery worker 的 docker,程序设置非常简单

我们的部署周期使用 fig 来管理 docker,这里是我们的 fig.yml 文件对于 worker 的样子

我们面临的问题是,当我们尝试使用fig restart workersupervisord 程序时失败,因为它发现 pid 与以下错误发生冲突

然而,当我们使用fig -d up worker它时,它是有效的,因为显然upfig 试图重新创建容器而不使用现有的容器。但这会导致所有链接服务也重新创建,从而丢失 RabbitMQ 数据和 Redis 缓存。

有没有办法使用 simple 重新启动 dockerfig restart worker并确保 pid 在重新启动时清除?请指教

0 投票
2 回答
5066 浏览

docker - Docker Compose 不绑定端口

我的容器有以下 Dockerfile:

我构建了这个容器并使用docker run -i -t -p 8080:8080 -v /srv/source:/usr/src/app -w /usr/src/app --rm iojs-dev bash. Docker 将端口 8080 绑定到主机端口 8080,这样我就可以从我的客户端访问 iojs-application。一切正常。

现在我想用 docker-compose 启动我的容器,使用下面的 docker-compose.yml

当我现在运行时,docker-compose run webfrontend bash我无法访问主机上的 8080 端口。没有绑定端口。的结果为空,并且端口设置docker ports的结果也为空:docker inspect

0 投票
2 回答
3453 浏览

mongodb - 无法连接到 docker mongo

我正在使用sane和 docker 建立一个项目。创建项目以使用 mongodb 并创建资源后,我尝试运行它,但收到错误报告,服务器容器无法连接到 mongo。然后我试着跑fig up一下看看这是否是一个无花果问题并得到了同样的错误。这是我的fig.yml(删除了不相关的评论):

完整fig up的错误报告如下(错误报告sane up是相同的,虽然输出db_1更简洁,也有客户端的输出行):

我不确定这是码头工人问题、无花果问题、理智问题还是帆问题。我也无法弄清楚如何解决它。

0 投票
2 回答
897 浏览

docker - 使用 docker 的集中式团队开发环境

我想为我的开发团队(4 个 PHP 开发人员)使用 docker 构建一个“集中式”开发环境

  • 我有一台运行容器的大型 Linux 服务器(大量 RAM、磁盘、CPU)。
  • 所有开发人员在此 linux 服务器(主目录)上都有一个帐户,他们将项目源代码放置(git clone)。在本地(在他们的桌面机器上),他们可以通过网络共享访问他们的主目录。
  • 我希望所有开发人员都能够同时在同一个项目上工作,但是在不同的容器(或使用链接容器的项目的容器集)中查看他们的代码编辑结果

docker PHP 开发环境本身是没有问题的。我已经成功地尝试过这样的事情:http: //geoffrey.io/a-php-development-environment-with-docker.html

我可以使用 fig,在每个项目源代码的根目录下都有一个 fig.yml,因此每个开发人员都可fig up以为给定项目启动一组容器。我什至可以FIG_PROJECT_NAME为每个帐户使用不同的环境变量,所以我认为 2 个开发人员可以fig up同一个项目,并且他们不会有容器名称冲突

是否有意义 ?

但是之后,我真的不知道如何动态地授予对正在运行的容器的访问权限:运行时,容器中通常会有一个 Web 服务器映射到主机中的随机端口。如何设置一种“动态 DNS”来指向正在运行的容器,可以通过 nginx 反向代理访问,比如说(虚拟主机的创建和销毁也必须是动态的)?

总而言之,我想要的工作流程:

  • 开发人员 ssh 进入开发环境(大型 linux 服务器)。
  • 他从他的主目录进入项目目录并执行fig up
  • 在 nginx 反向代理中创建一个 vhost,指向正在运行的容器,并添加一个 DNS 条目(或 /etc/hosts 条目),它是这个先前生成的 vhost 的 server_name。
  • 源代码从主机目录 ( 挂载到容器中-v host/dir:container/dir,因此开发人员可以在容器运行时编辑任何文件
  • 可以通过访问 vhost 查看结果,例如: randomly-generated-id.dev.example.org
  • 当更改正常时,开发人员可以执行 git commit/push
  • 然后开发fig stop人员依次删除 nginx 反向代理对应的 vhost 并删除动态 DNS 条目。

那么,如何进行这样的设置呢?我提到了 fig 之类的工具,但如果您有任何其他建议……但请记住,我想保持一个轻量级的工作流程(毕竟我们是一个小团队 :))

谢谢你的帮助。

0 投票
2 回答
467 浏览

docker - 添加到容器的 /etc/hosts 使用 Fig?

我正在尝试进行配置fig,以便无需指定完全限定的域名即可连接到我的数据库服务器。数据库在裸机上运行(不在 docker 中)。在主机上,glinda.local在中指定/etc/hosts,我希望容器模仿这种行为(尽管不依赖于主机的配置)。

我在 github 上找到了这个建议/etc/hosts,但它失败了,因为它位于只读文件系统上。

所以问题仍然存在,我如何在我的 docker 容器中添加glinda.localfrom ?fig.yml/etc/hosts

0 投票
1 回答
5666 浏览

mysql - Docker - MySQL 容器不继续运行

我需要一些关于在 Docker 容器中使用 MySQL 的帮助。我认为 Docker 的全部意义在于隔离沙箱中的进程并让它们像正常进程一样运行——我没有得到这个功能。

每当我运行从自己的映像构建的 MySQL 容器时,它会运行 2 秒,然后停止。尝试docker run -i -t <imageid>给了我这个:

为什么守护程序不保持打开状态?我有我Dockerfile的,看起来像:

还有一个fig.yml文件可以帮助我自动化构建过程:

0 投票
18 回答
118284 浏览

python - 无法使用 Ubuntu 在 docker 容器中安装 pip 包

我正在按照fig 指南将 docker 与 python 应用程序一起使用,但是当 docker 开始执行命令时

我收到以下错误消息:

这重复了几次,然后我收到另一条消息:

因此,由于某种原因,pip 无法从 docker 容器内访问任何包。我需要做些什么来允许它访问互联网吗?

但是 pip 可以很好地在 docker 容器之外安装东西,即使使用那个确切的包 ( blinker==1.3) 也可以正常工作,所以这不是问题。此外,此问题并非特定于该软件包。pip install对于任何包的任何命令,我都会遇到同样的问题。

有谁知道这里发生了什么?

0 投票
1 回答
103 浏览

docker - Run multiple identical fig environment on the same host

Imagine : 2 developers have an ssh access and can git clone a project with a fig.yml file. they clone the project with the same directory name ... therefore they can't launch the project 2 times to work independently on the source code.

The firt fig up will create the conatiners. OK. but the second will just recreate the same containers (not create another totally separate running instance of the project) ... how can I tackle this pb ?

Thanks !

0 投票
1 回答
390 浏览

docker - 使用 fig 和 docker-machine 远程部署

我使用 docker-machine 在 AWS 上轻松创建 docker 主机。

在本地,我使用 fig(或 docker-compose)来启动与服务相关的各种微服务。

fig 是否可以使用 docker-machine 命令设置的配置变量:

所以当我这样做时:

Fig 在 docker-machine 设置的主机上创建服务,而不是本地的?

0 投票
2 回答
1431 浏览

mysql - Docker - 无法访问容器中的 MySQL CLI

在我根据官方映像配置的 MySQL 容器中,它不允许我从主机访问 CLI,也不允许我从任何其他容器访问 CLI,尽管已链接:

用户 'root'@'172.17.0.3' 的访问被拒绝

现在,我知道我没有在我的 MySQL 容器上配置外部访问,但是如果我什至无法访问 CLI 来授予自己权限,我该如何配置它呢?我可以Dockerfile在初始安装 MySQL 之前创建并更改一些系统设置吗?如果是这样,我将如何去做?

我的fig.yml文件,用于设置我的 MySQL 容器: