vagrant-awsの0.6.0では、rsyncに失敗するので、明示的に0.5.0をインストールする。 vagrant plugin install vagrant-aws --plugin-version 0.5.0 Vagrantfileは下記を参照。 このままだと下記のWarningが出るので、 DEPRECATION WARNING: called deprecated method `access_key_id' of an Aws::CredentialProvider, use #credentials instead DEPRECATION WARNING: called deprecated method `secret_access_key' of an Aws::CredentialProvider, use #credentials instead 下記のように修
平田です。入社したて(?)なので、自分にあった仕事環境を手探りで色々試しています。 今日は、Vagrantを使ってEC2で開発環境を立てようとした時に軽くハマった出来事を備忘録がてら軽く紹介したいと思います。 Vagrantの概要 Developers.IOをご覧の方の多くは既にご存知とは思いますが、Vagrantは開発環境の構築と共有を支援するためのツールです。Vagrantfileと呼ばれる設定ファイルに開発環境の情報を記述することで、VirtualBoxやVMWareなどの仮想マシンに環境を構築することができます。 このVagrantfileをプロジェクトで共有することで、チーム内の開発環境の差異をなくし、変更を素早く適用することができるようになります。また、対応するpluginを導入することで、仮想環境だけでなくAWSやDigital Oceanなどのクラウド環境下で開発用インスタ
はじめに vagrant-awsは凄く便利ですが、Vagrantfileでaccess_key_idとsecret_access_keyを平文で設定するとGithubなどで公開できないので面倒です。アクセスキーは、AWS CLIやAWS SDKで共通化された、~/.aws/credentialsに登録するので、ここから持ってくる方法を検討しました。 結果 AWS SDK for Rubyを使って簡単に実現できました。以下の通り、AWS.config.credentialsを使えば、defaultのアクセスキーが取得できます。 VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = "dummy" config.vm.provider :aws d
概要 VagrantのBoxを最新版にアップデートするコマンドでvagrant box updateというものがあります。 このコマンドの存在は知っていたのですが、何もバージョニングしていない自作のBoxに対して どうやってアップデートするんだろうと謎だったのですが、その方法が分かりましたのでそのメモです。 大まかな流れ バージョン番号とboxファイルの保存場所を記述したjsonファイルを用意 jsonファイルをvagrant box addで読み込み boxを最新版に更新 jsonファイル内のバージョン番号を更新 vagrant box updateで最新版へ更新 セットアップ jsonファイルを作成 { "description": "CentOS6.5 x86_64", "short_description": "CentOS6.5", "name": "centos6.5", "v
Vagrant 1.7.2 + CentOS 7.1.1503 で、private_networkの ip address が消えるCentOSVirtualizationVagrant 現象 Vagrant 1.7.2でCentOS 7.1.1503をデプロイすると、vagrant up(初回)後、しばらくすると Private NetworkのIP Addressが消えてしまう(もちろん、sshでも private network側 interface には入れない)。network.serviceをrestartしたり、/etc/init.d/network restartすると一時的に復活するが、しばらくすると、また消えてしまう。vagrant reload すると、復活して以後は消えなくなる(Nat側は問題ない)。 環境 vagrant 1.7.2 Windows 8.1 Pro
PackerBuild and manage images as code
VagrantでVM起動時に、追加ディスクを作成してアタッチ - VirtualBox ProviderRubyVagrant VagrantでVMを作ってプロビジョニングをテストする際に、起動ディスク以外おnディスクがアタッチされている状況を再現したい事もあります。 対象がPublic/PrivateなIaaSならEC2(EBS)だったり、CloudStack, OpenStackでも結構見られる状況かなと。 確認したのはVagrant 1.6.2。 ざっとこんな感じで記述します。 # -- snip -- config.vm.define machine do |config| config.vm.provider :virtualbox do |vb| at_disk = 'tmp/name_of_file.vdi' unless File.exists?(at_disk) vb.c
DigitalOceanとは DigitalOcean公式の説明ではこうあります。 DigitalOcean is a platform created for developers who need to launch and scale their applications quickly. Additionally, DigitalOcean provides the perfect environment for developers to play around on the command line and learn more about customizing their own servers. DigitalOceanは、AWSのEC2の機能のみを特化させたようなクラウドプラットフォームです。 特徴 見易くシンプルな管理画面 高性能(ディスクはどのプランでもSSD) 安
The following post is releasing experimental bits for feedback purposes. If you’re like me, a clean development environment is crucial to being effective. I used to carry around a portable hard drive with my golden image (starting point VM) and a number of other environments I’ve had already configured for the projects I was currently working on. This could be for a number of different reasons, De
開発環境で利用するVagrantのVMの数が増えてきたのでpecoでVM選んで起動や停止をできるようにしてみました。 vagrant-peco こんな感じで利用します。 うれしさ pecoでVMを選択できる。Vagrantfileのあるディレクトリに移動しなくてよい VMを複数選択して一括で起動・停止できる 通常のvagrant global-statusよりも高速に表示 direnvとの連携 インストール Vagrant1.6以降でつくったVMとvagrant-peco、vagrant-global-statusが必要です。 # vagrant-global-statusをインストール $ go get github.com/monochromegane/vagrant-global-status/... # vagrant-pecoをインストール $ cd [PATH] # PATHの
概要 Packerを使うと、VMイメージの生成が自動化できてとても便利です。 最近だと、ローカルではVagrantを使って開発をして、AWSへデプロイするなど、VM環境をまたいで開発、デプロイをすることが多くなり、VMの生成を統一し、自動化したいというニーズが増えてきているのではないかと思います。 Packerを使って、各VM環境毎のセットアップ手順を共通化しておくことで、開発、ステージング、プロダクション等の環境の間の違いをなくし、デプロイ時の不具合を最小化することが出来るようになります。 Packerは、JSON形式のファイルを用いて、設定を記述していきます。 下記の設定を用いると、AWS及びVagrantbox用のCentOS 6のVMイメージが並列に生成できます。 { "variables": { "aws_access_key": "{{env `AWS_ACCESS_KEY`}
Vagrant1.6のDocker provider Feature Preview: Docker-Based Development Environments Vagrant 1.6からDocker providerがサポートされた.つまり,VagrantでVMだけでなくコンテナも管理できるようになった. この機能はネイティブでDockerをサポートしてないOSXでも使え,この場合は裏側でProxy VM(boot2docker box)が勝手に立ち上がって,その上でコンテナが立ち上がる.つまり,以下のようになる. OSX -> (Proxy VM) -> Docker Container OSXの場合,これは今までboot2dockerを使ってやってきたのと変わらない.ただ,Docker providerを使うと,boot2dockerの立ち上げまで面倒を見てくれる. 何が嬉しいのか
Vagrant + VirtualBox の環境で VM に CPU コアを2つ割り当てる設定を Vagrantfile に書こうとした。 config.vm.provider :virtualbox do |vb| vb.customize ["modifyvm", :id, "--memory", "2048", "--cpus", "2"] end 一見よさそうだが、これで起動すると VM の動作が めちゃ遅い! このとき、VirtualBox の設定を見るとシステムの欄に 「無効な設定が見つかりました」 という警告が出ている。 どうやら、警告文によるとコアを複数割り当てる場合には I/O APIC を有効化 というチェックボックスを ON にする必要があるようだ。 これを Vagrantfile の記述によって設定するには上のスクリプトにさらに "--ioapic", "on" と
We heavily utilize Vagrant in our development workflow. Vagrant is a tool for easily setting up virtual machines as development environments, making it easy to distribute development environments and making them reconstructible and resetable. It has proven to be an indispensable tool when working in development teams with more than 1 person, especially when not everybody uses the same operating sy
前回のVagrantとSSDなVPS(Digital Ocean)で1時間1円の使い捨て高速サーバ環境を構築する - Glide Note - グライドノートの続き。 Vagtant+DigitalOceanだけでも十分便利なんですが、先日CentOS6.5がリリースされ、正式にDockerがサポートされたので、DigitalOcean上にCentOS 6.5+Dockerな環境を用意してみる。 といっても、2013年12月20日現在DigitalOceanではCentOS 6.5なimageが提供されていないので、選択出来るCentOS 6.4のイメージを使いながら、Vagrantを利用してコマンド一発でCentOS 6.5+Docker環境が作れるようにした。 glidenote/vagrant-docker-digitalocean これは何 Vagrantを利用して、Digital
Dockerで継続的インテグレーション Dockerで複数バージョンのrubyがインストールされたイメージを作るを使って,ローカルでTravis CI的なビルドテストを実現する方法を書く. 準備 (OS X) Vagrantを使う.バージョン1.4からはDockerのprovisioningに対応してるのでそれを使う. Download Vagrant - Vagrantより.dmgをダウンロードしてきてインストール. インストールしたら,rubyプロジェクトに移動して以下を実行する. vagrant init precise64 http://files.vagrantup.com/precise64.box Vagrantfileを以下のように編集する.ここでは,docker-rbenvで作成した,複数バージョンのruby (1.8,7と1.9.3,2.0.0)とそれぞれにbundle
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く