Tag: capistrano

Gitlab-ci使用SSH密钥configurationdocker runner进行部署

我正在尝试使用gitlab-ci和capistrano来部署我的symfony应用程序。 但是我不能通过在docker中注入密钥来部署SSH,脚本在连接时不断提示input密码。 我正在使用gitlab的本地实例。 在gitlab的SSH_PRIVATE_KEY私有variables中,我添加了git用户的私钥,并在SSH_SERVER_HOSTKEYS中添加了ssh-keyscan -H 192.168.0.226命令的结果。 在deploy的.ssh文件夹的authorized_keys文件中,我把git用户的公钥。 这里是configuration文件: gitlab-ci.yml: image: php:7.1 cache: paths: – vendor/ before_script: # Install dependencies – bash ci/docker_install.sh > /dev/null – bash ci/ssh_inject.sh stages: – deploy deploy: stage: deploy script: – apt-get install ruby-full -yqq – gem install capistrano -v 3.8.0 – gem install capistrano-symfony – cap production deploy environment: name: […]

docker-compose:使用.envpath问题

我试图运行一个dockerized项目,这是与Capistrano部署 我的应用程序位于/opt/hosting/my-project目录中,结构如下: /opt/hosting/my-project /current -> releases/201704251234/ /releases/201704251234/ /repo/ revisions.log /shared/ 目前,我想要做的只是: cd /opt/hosting/my-project/current docker-compose -f docker-compose-production.yml up -d 这失败了以下错误: ERROR: Couldn't find env file: /opt/hosting/my-project/shared/.env 这是我的docker-compose-production.yml的内容 version: "2" services: app: build: ./ container_name: myproject_app env_file: – /opt/hosting/my-project/shared/.env expose: – 9000 volumes: – /opt/hosting/my-project/:/opt/hosting .env文件需要存在,是可读的,似乎不包含任何错误。 这里是它的内容: COMPOSE_PROJECT_NAME=myproject 我的docker-compose -v: docker-compose version 1.9.0, build 2585387 有没有人有一个想法,为什么这是失败? 干杯!

如何添加ssh密钥到docker集装箱?

我有与Capistrano部署现有的Rails应用程序。 现在我的团队把这个项目交给了Docker。 当我尝试 docker-compose run web cap production git:check 我有git退出状态:128.我知道这是来自Docker的ssh问题。 我可以将SSH密钥添加到Docker容器并运行cap production部署?

Rails和数字海洋Ubuntu Docker的问题

我一直在关注这个教程: https : //www.digitalocean.com/community/tutorials/deploying-a-rails-app-on-ubuntu-14-04-with- capistrano-nginx-and-puma 但是我得到这个错误:root @ demo:〜/ app#cap demo deploy:initial [弃用通知]默认情况下,未来版本的Capistrano不会加载Git SCM插件。 为了消除这个弃用警告,在require "capistrano/deploy"后将以下内容添加到您的Capfile中: 需要“capistrano / scm / git”install_plugin Capistrano :: SCM :: Git (回溯限制为导入的任务)cap中止! SSHKit :: Runner :: ExecuteError:在主机xxxx上执行时发生exception:拒绝连接 – 连接(2)为“xxxx”端口5000 Errno :: ECONNREFUSED:拒绝连接 – 连接(2)“xxxx”端口5000 我一直在研究几个小时,不知道如何解决这个问题,因为我找不到公式化的答案。 下面是deploy.rb server 'xxxx', port: 5000, roles: [:web, :app, :db], primary: true set :repo_url, 'git@github.com:company/app.git' set :application, […]

运行和部署到Docker容器的Rails

我是一个Linux容器的总诺贝尔,并花了一些时间了解Docker ,并原谅我的困惑,想到这个问题。 目前,我有一个通过capistrano部署的Rails应用程序。 我的云服务器在Debian Wheezy发行版上与Opscode Chef一起维护。 对于开发,我已经预装了应用程序和服务的Vagrant虚拟机。 如果我要使用Docker,我的应用程序在哪里坐? 容器或主机? 我将如何部署(生产)和共享目录(开发)? 我可以使用docker在同一台服务器上运行所有附加服务,例如memcache,redis,postgresql等吗? 我可以想象Docker的潜力,但是看不到它的实际用途。 看起来像容器是未来的一部分。 任何人从虚拟化切换指导?

docker工人,如何取代docker工人的卡皮斯特拉诺任务

我正在尝试dockerize我的生产轨应用程序。 目前的应用程序使用Ansible进行configuration,并使用capistrano进行部署。 我研究了不同的docker部署策略,并考虑摆脱docker中的capistrano,并将docker-compose 我正在编写dockerfile来configuration和部署应用程序,但部署类似于capistrano的应用程序有点复杂,因为deploy.rb使用几个rake任务来设置预先部署任务,如创build目录设置应用程序名称和获取一些variables。 如何在dockerfile中复制上限任务,或者是否有方法在Docker文件或运行Docker容器中使用当前上限任务?