1. これだけは入れとけ!便利な gem 2. こう記述しろ!設定ファイル 3. 意外と知らない?注意点.

Slides:



Advertisements
Similar presentations
ECLフレームワー ク 近畿大学 理工学部 情報学 科 間野 哲 弥.
Advertisements

UNIX(Linux) サーバ 学術情報基盤センター 下園幸一 2009/09/08.
Ruby on Rails (RoR) 講習会 近畿大学大学院 田中大介. 本日の目標 Web アプリケーションを作ろう!
Cygwin 上の inetd /etc/inetd.conf /etc/inetd.conf 環境変数 CYGWIN と PATH の確認 環境変数 CYGWIN と PATH の確認 サービスへの登録と起動 サービスへの登録と起動 ftp サービスへのアクセスの確認 ftp サービスへのアクセスの確認.
BBT 大学 Ruby on Rails 開発環境セットアップマニュアル Mac 版 1.1 最終更新日: 2013/1/5.
Web アプリをユーザー毎に カスタマイズ可能にする AOP フレームワーク
BBT大学 Ruby on Rails開発環境セットアップマニュアル
株式会社co-meeting パブリッククラウドエバンジェリスト 吉田 パクえ
Jsuiteクーロンサービスtutorial
7-1.WEKOコンテンツ 一括登録 マニュアル Version2.5
情報基礎A 情報科学研究科 徳山 豪.
UNIX利用法.
UNIX利用法 情報ネットワーク特論資料.
知能機械工学科 担当:長谷川晶一 TA:新・後藤・ナンバ
WebLSDローカルキット2008のインストール1
Macユーザーの方:データ転送 ターミナル使用.
情報実験:ネットワークコンピューティング入門
(株)アライブネット RS事業部 企画開発G 小田 誠
Unix生活 Vol.1
Flashプレイヤーを使った動画配信 情報工学科 宮本 崇也.
実習用サーバの利用開始手順 (Windowsの場合) TeraTerm Proをインストール 公開鍵をメールで送付
プログラミング基礎I(再) 山元進.
社内システム進捗 前回までの決定事項 →システムは「Scala PlayFramework2」で作成
UNIX Life KMSF M2 saburo.
3-1 MySQLについて 発表者:藤村元彦 自然言語処理研究室.
ISCCD7.5構築 その2 Middleware 導入
TIES v8.5 TIES V8のインストール方法 TIES機能モジュールの利用方法 目次
rails under “production”
Mavenによる プロジェクト管理 近畿大学理工学部 情報学科3年  小野実.
Servlet J2EE I 第8回 /
吉田和弘 株式会社ミッタシステム Rubyのすすめ 吉田和弘 株式会社ミッタシステム
MacOSX El Capitan Apache起動方法
バージョン管理超入門 まだファイルコピーしてます?
キャンパスクラウドによる 実験環境の構築 情報ネットワーク特論 講義資料.
Phenixサーバ クラックまとめ.
Al-Mailのインストールと使い方 インストール –1 (pop-authの設定、Al-Mailのインストール用ファイルをダウンロード)
RAD Studio 14/09/27 TEffectを使った綺麗なForm
平成22年度に実施を予定するインターネットを 用いた研修システムによる研修 ライブ配信受講手順書
Curlの仕組み.
パソコン同好会のホームページは今回WordPressに変わったのですが 使いづらいとの声が多いので投稿者用の手順書を作ってみました。
スクリプト言語を用いたPHITSの連続実行
Linux リテラシ2006 第6回 デーモン CIS RAT.
鯖管のすヽめ.
情報技術演習Ⅰ 人文学研究のための情報技術入門 2017/06/22
公開鍵認証方式の実習 TeraTermの場合
情報工学科 3年生対象 専門科目 システムプログラミング 第5回、第6回 ヒアドキュメント レポート課題 情報工学科 篠埜 功.
ホスティングサーバの作成と、 ラズベリーパイの利用
FreeBSDインストール 2002年4月10日.
九州大学キャンパスクラウド 利用法 情報ネットワーク特論 講義資料.
SPARS-J デモ 山本哲男 立命館大学 情報工学部 2018/12/1 SPARS-J デモ.
VBA ( Visual BASIC for Application) を使えるようにする方法
新しいリソース グループまたはサブスクリプションへのリソースの移動 microsoft
三浦元喜 北陸先端科学技術大学院大学 知識科学研究科 2007/9/7
キャンパスクラウドによる 実験環境の構築 情報ネットワーク特論 講義資料.
Linux リテラシ 2006 第5回 SSH と SCP CIS RAT.
すぐできるBOOK -基本設定編-.
gate-toroku-system のしくみ
Javaによる Webアプリケーション入門 第2回
実践ロボットプログラミング LEGO Mindstorms EV3 で目指せロボコン!
公開鍵認証方式の実習 MacOS Xの場合.
7-0.SWORD Client for WEKO インストールマニュアル Version 2.2
Borland C++ のインストール 教科書 pp
UDPマルチキャストチャット      空川幸司.
合成用システムの使い方 計算機構成用 天野.
Borland C++ のインストール.
gate登録システム: 設計ポリシーから使い方まで
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
JSPの基本 J2EE I (データベース論) 第8回 /
gate-toroku-system のしくみ
ユーザ認証の盗聴 2002/9/10 峯 肇史 牧之内研究室「インターネット実習」Webページ
Presentation transcript:

1. これだけは入れとけ!便利な gem 2. こう記述しろ!設定ファイル 3. 意外と知らない?注意点

・ capistrano_colors ・ capistrano-ext ※インストール方法は割愛。 ググれ!

使用前 使用後 何ができる? → capistrano の実行コマンド、 コメントなどを色づけしてくれる。 地味だけど便利。

何ができる? → 環境に応じた capistrano 設定を差分ファイルで 上書きする事が可能になる。

 フォルダ構成 Root └ /config └ deploy.rb ( 共通設定 ) └ /deploy └ staging.rb ( staging 差分) └ production.rb ( production 差分)

環境ごとの「 user 」を置き換えたいなら。。。 #config/deploy.rb set :user, “hogehoge“ #config/deploy/staging.rb set :user, “fugafuga“ #config/deploy/production.rb set :user, “piyopiyo“

ステージング環境へデプロイ 本番環境へデプロイ $ cap staging deploy $ cap production deploy

(1) deploy.rb デフォルト記述 (2) Passenger との連携設定 (3) パスワードなどの動的入力 (4) プッシュ式デプロイ

Q. deploy.rb ファイル書くの面倒だよ! 何かいい手ない? A. AP サーバで以下のデフォルトルールに従えば~  Rails の実行ユーザは「 app 」  アプリ設置場所は「 /u/apps 」  「 app 」ユーザに「 /u/apps 」以下のファイル作 成・削除権限を与える  サーバに公開鍵などでの パスワード無し ssh ログイン可能

7 行で済みます。 #config/deploy.rb set :application, “test “ set :scm, “subversion“ set :scm_user, “hogehoge“ set :scm_password, “fugafuga“ role :web, “web.test.com“ role :app, “app.test.com“ role :db, “db.test.com “

Q.Capistrano を Passenger と 連携させたいんだけど、 何か記述しておいた方が良い? A.Passenger は「 tmp/restart.txt 」 にファイルがあると、自動的に そのアプリのみ再読み込みするので~

以下のように再起動タスクを記述しておくと便利。 #config/deploy.rb namespace :deploy do task :restart, :roles => :app do run "touch #{current_release}/tmp/restart.txt” end # 以下タスクは Apache 自体の起動 / 停止に使用。複数アプリを # 単一 Apache で公開している場合は使用しない方が良い task :start, :roles => :app do run "sudo /etc/rc.d/init.d httpd start " end task :stop, :roles => :app do run "sudo /etc/rc.d/init.d httpd stop " end

Q.capistrano でセキュリティ要件が厳しいとき、 以下のような要望が出てくる。 さあどうしよう?  セキュリティ要件でパスワードを設定ファイル 上にベタ書きするのは NG  Subversion サーバのパスワードをデプロイ担 当者ごとに使い分けたい  AP サーバのパスワードをデプロイ担当者ごとに 使い分けたい...etc

A.Capistrano::CLI を使用すれば 動的入力できる! #config/deploy.rb # 入力(エコーバックあり) set :scm_user do Capistrano::CLI.ui.ask (“scm user:”) end # パスワード ( エコーバックなし ) set :scm_password do Capistrano::CLI.password_prompt(“scm pass:”) end

AP サーバ Capistrano 実行サーバ Subversion サーバ Q. セキュリティ上 AP サーバから Subversion リポジトリに アクセス出来ないんだって! これではデプロイできない。。。助けて!

A. 「 deploy_via, :copy 」オプションを 使うことで、プッシュ式デプロイを行い ましょう。 #config/deploy.rb set :deploy_via, :copy

AP サーバ Capistrano 実行サーバ Subversion サーバ deploy_via :copy を設定すると 1. capistrano 実行サーバにチェックアウト 2. AP サーバに gzip 圧縮して scp アップロード 3. AP サーバ上で展開して配置 という流れでデプロイを行う事ができます。 ① ② ③

・ role:db の意味 ・ユーザのアップロード画像などは どこに置くべき?

Q. role :db に指定するサーバは、 DB サーバで良いんだよね? A. いいえ。 × : DB サーバ ○ : Migration を実行するサーバ (ほとんどの場合 AP サーバと同じで良い)

Q. ユーザがアップロードした画像とか doc ファイルとかって、 どこに配置しておくのが良いのかな?

A.shared/system 以下にに置き、 capistrano で public 以下へシンボリックリンクを 張りましょう。 myapp └ current └ releases ( 最新アプリ ) └ shared └ log └ log └ public └ system └ user_img └ user_img シンボリックリンク

シンボリックリンクを張る例: #config/deploy.rb after “deploy”, “deploy:link_images” namespace(:deploy) do task :link_images do run <<-CMD cd #{release_path} && ln –nfs #{shared_path}/user_images #{release_path}/public/user_images CMD end

ご静聴 ありがとう ございました。