摘要:接着上一篇管理程序的本篇介绍远程部署到指定环境使用的技术是环境准备使用下面的命名获得模版,里面有准备好的各个以及基本包。将上面的的,和定制成你需要的参数就好。在上述命令运行成功之后,登录到上下目录结构,如下所示将部署到之后,到环境。
接着上一篇管理python程序的db schema, 本篇介绍远程部署到指定环境(prod or staging).
使用的技术是Capistrano.
使用下面的命名获得模版,里面有准备好的各个config以及基本bin包。
git clone https://github.com/flying-bird/python-db-schemaInstall Package
cd python-db-schema bundle installChange Config Update config/deploy/production.rb
default config in python-db-schema/config/deploy/production.rb:
➜ python-db-schema git:(master) less config/deploy/production.rb # Simple Role Syntax # ================== # Supports bulk-adding hosts to roles, the primary server in each group # is considered to be the first unless any hosts have the primary # property set. Don"t declare `role :all`, it"s a meta role. role :app, %w{your_name@prod_env_ip_or_host} role :web, %w{your_name@prod_env_ip_or_host} role :db, %w{your_name@prod_env_ip_or_host}
将上面的config的your_name和prod_env_ip_or_host定制成你需要的参数就好。
Update config/deploy.rb➜ python-db-schema git:(master) less config/deploy.rb set :application, "python-db-schema" set :repo_url, "https://github.com/flying-bird/python-db-schema" set :branch, "master" set :user, "your_account" set :deploy_via, :copy set :linked_dirs, %w{log} set :deploy_to, "/tmp/your_deploy_path"
将上面的config的your_account,your_deploy_path和repo_url定制成你需要的参数就好。
Deploy你可以在本地使用下面的command,将code部署到production环境。
cap production deploy
在上述命令运行成功之后,登录到prouction env上check下目录结构,如下所示:
your_account@production_host: ls /tmp/python-db-schema current git-ssh.sh releases repo revisions.log shared your_account@production_host: ls /tmp/python-db-schema/current Gemfile Gemfile.lock README.md REVISION Rakefile bin config log srcMigrate DB Schema
将code部署到production之后,apply db schema到production环境。
更新config/database.yml只要将username/password/database改成特定值就好,笔者的配置如下:
staging: adapter: mysql2 encoding: utf8 pool: 20 username: mysql password: 123456 socket: /var/lib/mysql/mysql.sock host: 192.168.10.111 port: 3306 database: dashboard_test production: adapter: mysql2 encoding: utf8 pool: 20 username: mysql password: 123456 socket: /var/lib/mysql/mysql.sock host: 192.168.10.222 port: 3306 database: dashboard_productionApply Schema in Production Env
rake db:migrate RAILS_ENV=production
输出结果如下:
== 20170405024951 CreatePipelineTable: migrating ============================== -- create_table(:d_pipeline) -> 0.0355s == 20170405024951 CreatePipelineTable: migrated (0.0356s) =====================
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/38560.html
摘要:配置这个启动其他方式安装七牛云由于网站的静态存储要用七牛云,在运行程序前要安装否则报错没有的方法。七牛云安装前注意安装的版本,我被坑过一次,写程序时是版本,部署时都了,接口全都不一样。还有推荐下这篇来自的部署实例 以下所有代码中的操作都需要在命令行运行 安装mysql apt-get update apt-get install mysql-server mysql-client 根据...
阅读 2906·2023-04-25 22:16
阅读 1911·2021-10-11 11:11
阅读 3219·2019-08-29 13:26
阅读 558·2019-08-29 12:32
阅读 3375·2019-08-26 11:49
阅读 2943·2019-08-26 10:30
阅读 1901·2019-08-23 17:59
阅读 1456·2019-08-23 17:57