Tag: dokku

如何与dokku-alt一起使用其他buildpack

我根据提供的说明,在github回购库中安装了dokku-alt ,在数字海洋液滴处安装。 我能够运行一个节点应用程序和一个python应用程序,但我有兴趣使用Shiny Buildpack与dokku-alt部署Shiny应用程序。 我已经阅读了很多次的说明,但是我不明白如何得到这个。 我试图安装这个例子: https : //github.com/btubbs/shiny-example-1

Grep / Awk:从表格列中查找状态

dokku ls显示以下内容,但是如何使用awk获取app-1470418443的状态? 所以这个magic command返回running 。 —–> App Name Container Type Container Id Status app-1470418443 web 78a092d176f1 running example web 3b7803c49e04 running example2 web a750f2b4be44 running

Dokku / Docker,如何在运行容器的文件系统中访问文件?

以前,要访问正在运行的dokku实例中的文件,我将运行:docker docker ps以获取容器ID,后跟ls /var/lib/docker/aufs/diff/<container-id>/app/…注意:I我只是使用'ls'作为示例命令。 我最终想引用一个特定的文件。 这一定是已经改变了,因为容器ID不能通过这个path访问。 该文件夹中有大量的目录,但没有与任何正在运行的容器相匹配。 在这种情况下,似乎在整个容器中安装一个卷将是矫枉过正的。 我知道我可以使用dokku run project-name ls来访问文件系统,也可以使用dokku run project-name ls docker exec <container-id> ls ,但是这两者都不能满足我的用例。 为了更全面地解释,在我的dokku项目中,我有一些.sql文件,用来引导我的postgres数据库。 这些文件通过与项目的其余部分的git push被推上去。 我希望使用postgres dokku插件来运行以下内容: dokku postgres:connect db-name < file-name.sql 这是我以前一直在使用的: dokku postgres:connect db-name < /var/lib/docker/aufs/diff/<container-id>/app/file-name.sql但不再有效。 对此有何想法? 我是否全部错了? 非常感谢您的任何想法。

从dokku容器中查找DNS

我正在Ubuntu服务器上运行dokku容器内的一个节点应用程序,该服务器也运行bind9的DNS。 在节点的应用程序,我运行快车。 在节点的应用程序,我正在运行一个DNS反向查找客户端的IP这样(简化): const dns = require('dns'); const app = require('express')(); app.get('/myhostname', (req, res) => { dns.reverse(req.headers['x-forwarded-for'], (err, hostnames) => { res.json({ hostname: hostnames[0] }); }); }); 这可以在本地正常工作,但是一旦部署到dokku容器,就会失败并出现ENOTFOUND错误。 据推测,这是因为该应用程序没有设置为使用Ubuntu服务器作为其DNS服务器。 所以我试过这个后require('dns') : dns.setServers([process.env.DNS_SERVERS]) 其中DNS_SERVERS设置为服务器的本地LAN IP或其泊坞窗内部IP。 这两个地址中的任何一个都会导致延迟,并最终超时尝试获取地址。 我应该怎么做呢?

在特定的端口上运行Docker容器

DigitalOcean上有一个与Dokku一起部署的Rails应用程序。 我创build了一个Postgres数据库,并将其与Rails应用程序链接起来。 一切正常,直到我重新启动了液滴。 我发现应用程序停止工作,因为重新启动每个Docker容器得到一个新的端口和Rails应用程序无法连接到它。 如果我运行dokku postgresql:info myapp它显示旧的端口,但它已经改变。 如果我手动更改database.yml,并推到dokku回购一切正常。 那么如何防止每次服务器重新启动时Docker分配不同的端口? 或者也许有一个选项来更改正在运行的容器的端口。

如何解决Dokku部署中的预接收钩拒绝错误?

我目前正在部署一个dokku实例上的Angular4应用程序,但是,我一直在得到这个错误! [remote rejected] develop -> master (pre-receive hook declined) ! [remote rejected] develop -> master (pre-receive hook declined) 。 我从一个开发分支部署到主,所以我运行的部署命令,所以我git push mediafactory develop:master 我通过Dockerfile来部署,看起来像这样; FROM node:carbon RUN mkdir -p /opt/app WORKDIR /opt/app COPY package*.json ./ RUN npm install –save @angular/cli@1.3.0 RUN npm install –only=production COPY .angular-cli.json . COPY . . RUN ng build –aot -prod […]

与Dokku的Dart项目。 失败推动主

我正尝试在DigitalOcean上与Dokku一起构buildDart项目。 以与Node.js项目相同的方式执行。 但是当把git推到Dokku的时候,我得到了错误。 你能帮我一下吗 $ git push dokku master Counting objects: 632, done. Delta compression using up to 4 threads. Compressing objects: 100% (605/605), done. Writing objects: 100% (632/632), 7.98 MiB | 74.00 KiB/s, done. Total 632 (delta 264), reused 0 (delta 0) —–> Building svpe … Dart app detected —–> Welcome, this machine is: […]

dokku错误:无法find应用程序的实体

尝试重新启动服务器后重新启动dokku。 我所做的一切(redis:链接,dokku部署,从我的电脑推送新版本的应用程序..)失败,无法find实体的错误信息。 2014/07/16 09:02:45 Error: Could not find entity for domain_freek 我觉得这可能与Docker容器或图像有关,所以我尝试重新启动应用程序的最新docker容器,但没有骰子。 Dokku仍然给我一个无法find实体的错误。 root@domainfreek3:/home/dokku/domain_freek# docker restart `cat /home/dokku/domain_freek/CONTAINER` b5823fa2703f root@domainfreek3:/home/dokku/domain_freek# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b5823fa2703f dokku/domain_freek:latest /bin/bash -c '/start 6 minutes ago Up 10 seconds 5000/tcp compassionate_tesla f6d165a32e92 2c035b41f308 /bin/bash -c '/start 27 minutes ago Up 25 minutes 5000/tcp […]

在dokku应用程序部署上运行一个shell脚本

我一直在寻找一种方法来运行一次性的脚本,将数据加载到我们的数据库中。 目前,我们正在使用dokku-alt来开发我们的开发环境,并且我们有一个python脚本,用来更新我们的应用程序需要的模式,数据和函数。 我面临的问题是试图通过dokku-altfind一种在应用程序部署上运行脚本的方法。 我冒险使用一名工人,但工人本人并不performance我的期望。 从我注意到的是,一旦工作完成,工人将终止每一个进程。 这不是我们所需要的。 我们需要运行一次脚本来加载我们的数据和模式并优雅地closures。 我们仍然希望我们的web进程继续工作,所以subprocess发送一个kill信号给另一个进程。 所以我的问题是,是否有一种方法可以在部署时只运行一次脚本,而无需编写自定义插件? 05:23:07 schema.1 | started with pid 15 05:23:07 function.1 | started with pid 17 05:23:07 data.1 | started with pid 19 05:23:07 web.1 | started with pid 21 05:23:07 web.1 | Picked up JAVA_TOOL_OPTIONS: -Xmx384m -Xss512k -Dfile.encoding=UTF-8 -Djava.rmi.server.useCodebaseOnly=true 05:23:12 function.1 | Begin dbupdater 05:23:12 function.1 | […]

在DockerFile中使用Dokku环境variables

我打算在DockerFile中使用Dokku环境variables,但没有成功。 Dokku Env设有: dokku config:set www NR_APP=AppName 在DockerFile中,我想把这个NR_APP放到一个文件中: RUN sh -c 'echo "newrelic.appname=\"$NR_APP\"" >> /etc/php5/apache2/conf.d/newrelic.ini' 但是它不起作用,文件中的结果是: newrelic.appname= 如果我尝试在构build期间仅回显ENV: RUN echo "$NR_APP" 它返回空白。 如果我尝试在DockerFile 里面设置NR_APP: ENV NR_APP AppName 它的工作原理,但我不想在DockerFile中定义它,因为它是一个基于开发/生产部署而改变的值,我也用license_key来做。 谢谢!