Hnoss

Hnoss

GitLabのグループ機能はとんでもないツールだった。
カレンダー

文書タグ

フノス(訳者)(208) IT(184) 解説記事(140) マニュアル(78) GitLab CI(58) オープンソース(50) Linux(38) GitLab(33) メディア(33) コンテナ(28) ウェブ制作(25) DTM(19) HTML5(19) Libre Music(18) おすすめ オープンソース・ソフトウェア(18) 百科事典(14) プラグイン(13) 文化(12) ソフトウェア(11) セキュリティ(11) 録音(11) ミキシング(11) MIDI(10) 西アジア/中東(10) ジョージア(9) グルジア(9) 東ヨーロッパ(9) 料理(9) シーケンス(8) 芸能(8) 音楽編集(8) コマンド(8) 音楽(7) 経済(7) マスタリング(7) Raspberry Pi(6) 業務効率化(6) Google(5) WordPress(5) アプリ(5) JACK(5) マイクロサービス(5) 北米(4) Windows(4) Android(4) ワークフロー(4) 映像制作(4) ハンドブック(4) GNU(4) 欧州(4) 音楽プレーヤー(4) Ubuntu(4) アニメ(3) ホームオートメーション(3) アニメーション(3) IoT(3) Ardour(3) 社会(3) Java(3) ソーシャルメディア(3) DAW(3) 法律(3) Python(3) 牛(2) 歴史(2) ニュース(2) GNOME3(2) iOS(2) PlayStation(2) 仮想通貨(2) 古代エジプト(2) マーケティング(2) 有角神(2) エジプト(2) ALSA(2) OS X(2) ERPシステム(2) 電子ブック(2) トヨタ(2) バト(2) Krita(2) 電子書籍(2) ウィッカ(2) GPL(2) ERP(2) オカルト(2) Twitter(2) ロスレス音源(2) BountySource(2) スマホ(2) 魔女宗(1) アクティブSETI(1) バイノーラル(1) Papagayo(1) 写真(1) 意味(1) コシディウス(1) インド(1) ユーコン(1) ヤーウェ(1) CD(1) タブレット(1) 学校(1) 日本(1) 羊(1) ベルゼブブ(1) デジタルサイネージ(1) VR(1) アップストリーム・パッケージング(1) 画像(1) 由来(1) グンデストルップの大釜(1) カナン(1) カナダ(1) サウンドフォント(1) 詩篇(1) チップチューン(1) バ・ネブ・デデト(1) コットン・マザー(1) クラウドキャスティング(1) VST(1) ポータブルソフトウェア(1) エリファス・レヴィ(1) マサチューセッツ(1) 考古学(1) 申命記(1) クヌム(1) 魔女裁判(1) オンデマンド(1) リーナス・トーバルズ(1) バフォメット(1) UNIX(1) 黙示録(1) スタジオジブリ(1) アモン(1) セイラム魔女裁判(1) ねじ巻きラジオ(1) 3D(1) 政治(1) イボ人(1) 国際(1) クリエイティブ・コモンズ(1) amazon(1) キリスト教(1) レビ記(1) Synfig(1) 独占(1) アマナイ(1) 広告(1) KXStudio(1) EU(1) イケンガ(1) 国際公文書館会議(1) マイナビ(1) 募金(1) ユダヤ教(1) ウルガタ聖書(1) 科学技術(1) 出エジプト記(1) 観光案内(1) 絵文字(1) サンフランシスコ(1) パキスタン(1) リクルート(1) ハトホル(1) パン(1) 地方(1) Blender(1) 羊神(1) ギリシャ(1) 高速道路情報無線(1) ツイッター(1) Youtube(1) 中南米(1) モヘンジョ=ダロ(1) CC(1) 声明(1) 悪魔(1) ラジオ(1) アレクサンドロス大王(1) ローマ(1) ポッドキャスト(1) ゲーム(1) パシュパティ(1) 1Password(1) アピス(1) 宗教(1) テレビ(1) OpenToonz(1) 電子教材(1) 船乗りの柱(1) シリア(1) GPS(1) アフリカ(1) リグ・ヴェーダ(1) F-Droid(1) ムネヴィス(1) ネオペイガニズム(1) コミュニティ放送(1) アンビソニック(1) 元ネタ(1) ケルヌンノス(1) ナイジェリア(1) 日記(1) 聖書(1) 任天堂 DS(1) 教育(1) bi-modal IT(1)
リファレンス

first-time visitors
user guide
謝辞

「みんなの翻訳」は情報通信研究機構言語翻訳グループ東京大学図書館情報学研究室による共同プロジェクトであり、三省堂国立情報学研究所連想情報学研究開発センターが開発に協力しています。三省堂には「グランドコンサイス英和辞典(36万項目収録)」の使用を許可していただきました。

連携研究グループはこちらをご覧ください。

「みんなの翻訳」を使っている翻訳グループについてはこちらをご覧ください。

バナー

logo

ポスター

poster

フライヤー

poster poster
Mozilla Firefox ブラウザ無料ダウンロード
本サイトはブラウザ「Mozilla Firefox」推奨です。
Firefox3で動作確認しています。

Valid XHTML 1.0 Transitional


GitLab Documentation>GitLab Continuous Integration (GitLab CI)>GitLab CI 設定サンプル集
>Dplをデプロイ・ツールとして使う

 Travis CIにて開発され、そこで使われてきたDpl(dee-pee-ell)ですが、GitLab CIで使うこともできます。

注:Dplを使う前に、現在ご利用のプロバイダがツールに対応しているかどうかを確認しておいてください。(こちらのページを参考に→github.com/travis-ci/dpl#supported-providers

 必要条件

 Dplの使用にはgemを使います。ruby 1.9.3以上が必要です。

 基本設定

 Dplをインストールするには、大抵のマシンで

======================
gem install dpl
======================

 というコマンドを使います。全てのコマンドを確認するときには、CIサーバーより、ローカル環境からコマンドを出した方がよいでしょう。

 Debian系Linuxの場合、次のコマンドでRubyをインストールします。

======================
apt-get update
apt-get install ruby-dev
======================

 Dplに対応しているプロバイダは、Heroku、Cloud Foundry、AWS/S3など数多く、使用に特別な設定が要らないサービスもありますが、中には追加パラメータが必要なものがあります。

 たとえば、アプリケーションをHerokuにデプロイする場合、「gitlab.ci.yml」というファイルにプロバイダ「heroku」と、そして「app」のうしろにAPIキーを明記する必要があります。
 使用可能なパラメータはこちらのページでご確認ください。(github.com/travis-ci/dpl#heroku

============================================
staging:
  stage: deploy
  script:
  - gem install dpl
  - dpl --provider=heroku --app=my-app-staging --api-key=$HEROKU_STAGING_API_KEY
============================================

 上の例では、「my-app-staging」をHerokuサーバーにデプロイする時にDplを使っています。Herokuサーバーについてはその後の「HEROKU_STAGING_API_KEY」という変数で表しています。

 とはいえ、これはほんの1例に過ぎません。他のプロバイダについては「サポートしているプロバイダ一覧」から対応の仕方を確認してください。少々長いリストですが、よろしくお願いします。

 DplをDockerで使う

 GitLab ランナーを使う時には、サーバーのシェルコマンドを使って設定していくのが一般的ですが、それはローカル環境でランナーを支度でき、もちろん設定もローカルで可能であることが前提であります。(例: gitlab_runnerあるいは gitlab_ci_multi_runner

 しかし、全ての人がわざわざランナー用のサーバーを用意できるとも限りません。
 そのようなときに使われるのが、Dockerコンテナです。もちろん、DockerコンテナでDplを使うことは可能です。
 ただ1つ注意点がありまして、Dockerコンテナには最初からRubyのランタイムがインストールされているわけではありません。
 
 よって、「.gitlab-ci.yml」ファイルの設定は、Rubyのインストールから始まります。

============================================
staging:
  stage: deploy
  script:
  - apt-get update -yq
  - apt-get install -y ruby-dev
  - gem install dpl
  - dpl --provider=heroku --app=my-app-staging --api-key=$HEROKU_STAGING_API_KEY
  only:
  - master
============================================

 まず最初に「apt-get update -yq」でパッケージリストを更新して、その次に「apt-get install -y ruby-dev」でRubyランタイムをインストールします。
 あとは、先ほど紹介した短いコンフィグと同じ内容です。

 この例は、DockerでDebian系システムを動かしていることを想定しています。


 「staging」と「production」でどのような違いを持たせるか

 アプリを「deploy」するといっても、そのアプリが試作品か発表用かで、環境を分けられた方が便利です。

 GitLab CIでは、「master」ブランチへのデプロイを「staging」job、「tag」が付いた試作アプリケーションのデプロイを「production」jobの2ルートに分類することができます。

 (訳者より一言:ちなみに、この「master」と「tag」の解釈を逆転させた考え方もあるようです。この場合「tag」が正式発表用になっています。)

 そこで以下のような設定が成立します。
 最後にこれを設定しておくと、Dplをさらに使いこなせるようになるはずです。

============================================
staging:
  stage: deploy
  script:
  - gem install dpl
 
- dpl --provider=heroku --app=my-app-staging --api-key=$HEROKU_STAGING_API_KEY
  only:
  - master

production:
  stage
: deploy
  script:
  - gem install dpl
 
- dpl --provider=heroku --app=my-app-production --api-key=$HEROKU_PRODUCTION_API_KEY
  only:
  - tags
============================================

 同じdeployの工程でも、状況に応じて異なる2つのルートを作成できました。

  1. staging - masterブランチにプッシュがあったときに、変数に応じたdeployを開始するように設定
  2. production - tagにプッシュがあったときに、変数に応じたdeployを開始するように設定

 そして、jobごとに2つの変数を設けました。

  1. HEROKU_STAGING_API_KEY - 「staging」に送られたアプリをどのように展開するか
  2. HEROKU_PRODUCTION_API_KEY - 「produciton」に送られたアプリをどのように展開するか



  APIキーの設定

 外部変数に許可を出すには、「Settings→Pipelines→Secret variables」に移動して適切な設定をしてください。

 変数はプロジェクトの設定を決定づけるうえで重要な役割を果たします。なかでも、「Secret variables」はレポジトリにない変数をどうしても設定しなくてはならない時に使われます。
 ここで登録されなかった変数においては、「.gitlab-ci.yml」に記述しても実行されることがありません。
 また、「Secret variables(秘密変数)」に登録された変数は、jobのログに記録されません。

 それから、「.gitlab-ci.yml」に記載されている変数の前には「$」という記号がありますが、Windows Batchランナーの場合、変数を「%」で囲まなくてはなりません。

  1. $SECRET_VARIABLE - Windowsランナーを除くシステム
  2. %SECRET_VARIABLE% - Windows Batchランナーを使っている場合

  詳しくは「CIで使える変数」をご覧ください。

Edit this page

原文:https://docs.gitlab.com/ee/ci/examples/deployment/README.html
原文ページプロジェクト並びにドキュメントファイルは、MIT Licenseのもと公開されています。(URL:https://gitlab.com/gitlab-com/gitlab-docs/blob/master/LICENSE) この記事の文章は、訳者の判断によりCreative Commons BY (version 3.0) を適用するものとします。
新着文書(Hnoss)

Signing legal documents
現在の位置: チームハンドブック 目次 >法的文書に署名する  法的文書への署名は、他社・他組織などに直接出向いてNDAsを取り扱った人物を除...
Team Handbook
現在の位置:チームハンドブック 目次  このハンドブックは、GitLabという企業が、どのようにサービスを維持運営していくかを記したものだ。ここに...
GitLab Pages documentation
  新しいドキュメント はこちらです。このドキュメントは旧式です。 GitLab Documentation > User documentation > Projects >GitLab P...
GitLab Pages
GitLab Documentation > User documentation > Projects >GitLab Pages 説明書  GitLab Pagesなら、無料でウェブサイトをホスティングできる...

新着文書

Social leader killed in Cordoba is fourth in same town in 2018
3月11日日曜日、地方評議会リーダーでアフリカ系コロンビア人の子孫であるトマス・バレトが、コルドバ県サン・ホセ・デ・ウレの自宅で殺害された。 2...

新着Wikipedia翻訳

E (programming language)
E(プログラミング言語) AmigaE や e(検証言語) 、 GNU E と混同しないこと。 E -------- パラダイム マルチパラダイム:オブジ...
Van Eck phreaking
Van Eck phreaking(ファン・エック・フリーク) Van Eck phreakingは盗聴の一形態であり、その中では特殊な装置が使用され、電子機器を探るため、隠...
Trusted Computer System Evaluation Criteria
Trusted Computer System Evaluation Criteria(信頼されたコンピュータ・システム評価基準) 【画像のキャプション】オレンジブック 信頼されたコ...

更新履歴

※文書量によっては処理に数十秒かかる場合があります
バージョン 比較対象 更新日時 更新者
1(最新) 2018-03-23 21:27:32 Hnoss
2 2017-11-17 23:49:36 Hnoss
3 2017-11-17 23:40:11 Hnoss
4 2017-11-11 22:23:20 Hnoss
5 2017-11-09 16:16:45 Hnoss
6 2017-11-02 19:09:58 Hnoss
7 2017-11-02 19:09:28 Hnoss
8 2017-11-02 19:08:07 Hnoss
9 2017-11-01 14:30:38 Hnoss
10 2017-11-01 14:23:26 Hnoss

    
ブックマーク登録

タグを「;(半角セミコロン)」区切りで入力して下さい(例)tag1;tag2;tag3
10タグまで登録可能。各タグ30文字まで

履歴
状態 作業中 作業予定あり 作業予定なし 作業完了
テーマ 社会 政治 法律 経済 文化 芸能 科学技術 IT 健康/医療 スポーツ メディア 植物 動物 菌類 地方 国際
地域 日本 東アジア アフリカ 南アジア 東南アジア 西アジア/中東 太平洋 北米 中南米 欧州
ジャンル ニュース 解説記事 論文 日記 百科事典

コメントを入力して下さい
0 / 250
    
ブックマーク登録

ブックマークに登録しました。


言語選択

    
ファイルプロパティ

使用許諾条件
ファイル情報
あなただけがこのファイルを閲覧・編集できます。
みんながこのファイルを閲覧できますが、
編集ができるのはあなただけです。
あなたに加えて、指定された人やグループが
このファイルを自由に閲覧・編集できます。
公開設定
編集設定
グループ:0組 翻訳者:0人
    
アクセス属性
この文書は「非公開」設定になっています。
一般公開する場合は、編集ページの書誌情報で「公開」設定に変更して下さい。
翻訳者選択

※メニュー「翻訳者管理」で翻訳者、グループを追加することができます。


    
ノート

非公開ノート
0 / 2000 ※「公開・編集」権限を持つ翻訳者のみに公開されます。
公開ノート
0 / 2000 ※文書を「公開」にした場合、一般に公開されます。

言語選択

 →