Laravel5を使ったWebアプリケーションを開発しています。 開発時はビルトインサーバで開発して、運用時はApacheでということがやりたかったのでまとめです。OSにはUbuntu14.04を使っています。Vagrantも使ってます。 開発時 - ビルトインサーバの起動 開発時はphp artisan serveでビルトインサーバを使ってます。手軽で便利です。 $ php artisan serve IP指定で起動することもできます。 $ php artisan serv --host 192.168.33.10 運用時 - Apacheで動かすには 基本的にはApacheでLaravelアプリケーションのバーチャルホストを定義するだけ。Laravelアプリケーションのpublicフォルダをドキュメントルートに指定します。 バーチャルホストの定義 Apacheにバーチャルホストの定義を
消したはずの仮想マシンが vagrant global-status で表示されてしまう場合、--pruneオプションをつければゴミ掃除してくれます。 vagrant global-status は、存在しない仮想マシンを表示してしまうことがある。 $ vagrant global-status id name provider state directory ------------------------------------------------------------------------- 55f191d default virtualbox poweroff /Users/DQNEO/hoge/kitchen 8486738 default virtualbox running /Users/DQNEO/hoge/kitchen2 2aa592d default virt
はじめに 先日うちの会社のアルバイトに来てくれている大学生さんに 「Vagrant, chef, DockerってよくWebで記事を読むんですけど使っている文脈が似ていて、何が違っていてどう使い分けるのかよくわからないんですよね〜」という風に尋ねられました。 その時に彼にも口頭で説明はしたのですが、うまく説明出来たのか自分でも怪しかったので今回まとめてみたいと思います。 Vagrantとは Vagrantについて、 Vagrant日本語ドキュメントには以下のように説明されています。 Vagrantは、 あなたとあなたのチームの生産性/柔軟性を最大限にする手助けをするために、 簡単な環境設定/複製可能なマシン/業界標準の技術で構築された1つの一貫したワークフローによって制御される可搬的な開発環境を提供します。 その恩恵を得る為に、Vagrantは先人の知見に基づいています。 マシン(開発環境
チーム開発の開発環境として Docker + Vagrant を選択し続ける理由 Docker Advent Calendar 2016 の 25 日目です. Docker アドベントカレンダーとして書いているはずだったんですが、推敲と校正を重ねているうちに Docker というよりは VM とか開発環境とかの話が色濃くなってしまい、主役のツールが Vagrant になってしまいました. 謹んでお詫び申し上げます. 僕が所属する会社の事業の一つに Web/モバイルアプリの SI + 運用があり、その際の Web/API サーバー開発は macOS + Vagrant + VirtualBox (CoreOS) + Docker を社内標準のローカル開発環境(以下、開発環境)としています. 勉強会後の懇親会やコンサルティングを提供する場で良く質問されることの一つに「Docker for Ma
Vagrant + Ansible + Docker を組み合わせて、 最終的にたった1コマンドで開発環境を作り上げてしまう事をゴールにプロジェクトを作成していきます。 前回の記事では Vagranet + Ansible でマシンの初期設定を行いました。 今回はDockerを組み合わせる前に、Vagrantではどんなことが解決出来て、 逆にどんな事が未解決なのかを整理していきます。 「この不具合ですが、僕のマシンでは再現しませんでした。」 いくら調べてもエラーが出ない、結局エラーを挙げた人のマシンも借りて検証し、 依存ライブラリのひとつがインストールされずに漏れている事を確認しました。 このエンジニアあるあるを予防することが出来ます。 Vagrant と Ansible(プロビジョニングツール) により、 Vagrantfileとプロビジョンの設定を文書として持てるようになりました。 こ
[LAMP]VagrantでCentOS7+Apache2.4+PHP7.1+MySQL5.7&Phalcon3.1.2環境を構築するPHPVagrantPhalconlampcentos7 はじめに この記事はmacOS Sierra (10.12.1)環境にて実施した内容をメモとして残しているものです。 上記環境以外の方は適宜置き換えて解釈していただけると幸いです。 また、導入しているパッケージ等は投稿者の好みによるものです。 最終更新:2017.06.06 0.Vagrant環境構築 Vagrantで構築しない場合はこの手順は不要 各種ツールDL&インストール VirtualBox http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html?ssSourceSiteId=otnjp
最近Vagrant上に開発環境を構築しました。その際に、CyberDuckで仮想マシンに接続し、編集したいファイルを1ファイルずつ開いていたのですが、さすがに面倒になったためAtomエディタでプロジェクトを開きたい!!と思い、やってみました。 こちらの記事を参考にしました 前提 バージョン remote-ftpのインストール .ftpconfigファイルの作成 .ftpconfigファイルの編集 仮想マシンに接続 前提 Varantで仮想マシンが構築済みであること バージョン Vagrant 1.9.1 VirtualBox 5.1.14 r112924 (Qt5.6.2) Atom 1.14.3 remote-ftpのインストール Atom → Preference → installからinstall package画面に移動し、remote-ftpを検索し、インストールしてください。
今日は、FuelPHPのプロジェクトのためのJenkinsサーバを構築してみます。 この設定で完璧というわけではないですが、いろいろなものが一通り動くレベルにはなってます。 FuelPHPプロジェクトを作成する FuelPHPのプロジェクトとして、ここでは、『はじめてのフレームワークとしてのFuelPHP 第2版(改訂版)』のコンタクトフォームを使います。 develop-2ブランチをgit cloneします。 $ git clone --depth=5 -b develop-2 https://github.com/kenjis/fuelphp1st-2nd-contact-form.git 以下は、プロジェクトがGitで管理されていることを前提としています。 Vagrantを使いサーバを構築する Vagrant CentOS6 PHP Development Environment(v
概要 仮想環境(VirtualBoxなど)上への仮想マシンの立ち上げ、操作が可能。 用語 プロバイダ 仮想環境 eg.VirtualBoxやVM Ware、EC2など プロビジョニング ミドルウェアの設定やインストールを行うツール eg.シェルスクリプト、Chef(chef-solo, chef-client)、Puppetなど Boxファイル 仮想マシン起動の際にベースとなるイメージファイルのこと。 仮想環境ごとに必要。 通常はOSイメージから作成する。 Vagrant利用の上で最低限必要な設定(Vagrantユーザの作成、sshdの起動、プロビジョニングツールのインストール)のみを行っておくのが普通。 Vagrantfile 構築する仮装マシンのスペックやプロビジョニングツールの指定など、仮想マシンの構成を記述する。 Rubyベース。 基本的に、本ファイルとプロビジョニングツールの設定
Vagrantを使ってローカル開発をしてるときに、仮想マシンのファイル(.vmdk)がどこにどう配置されているのかを調べてみました。 環境 Mac OSX Yosemite Vagrant 1.7.2 VirtualBox 4.3.20 配置場所には2種類ある ~/.vagrant.d/boxes/ ... 種仮想マシンの置き場所 ~/VirtualBox\ VMs/ ... 起動したインスタンスの実体 $HOME/.vagrant.d/boxes/ ここには、vagrant addなどしたときにインターネットからダウンロードされてきた仮想マシンが保存されます。 ここにある仮想マシンは基本的に読み取り専用として使われます。 AWSにおけるAMIのようなものと考えればよいでしょう。 Vagrantfileに ruby:Vagrantifle config.vm.box = "chef/cen
Windows + Vagrantで快適なRails開発がスタート!。。するはずだった。 現実は、Railsアプリの応答が遅すぎてページを開くだけで数十秒かかる始末。 どうやらvagrantが使用しているファイル同期が遅いのが原因らしい。 ■挫折 プロトコル変更 だったらファイル同期のプロトコルを変更しよう! nfsは、Windowsではできない。 rsyncも基本できないけど、導入の解説してくれてる人いるじゃん!! え、rsyncって双方向同期してくれないの。。 ゲストOSでファイル追加、編集できないのは困る。。 ■解決策 ネットワーク経由でゲストOSのファイルを直接編集 ゲストOSにフォルダ(/home/vagrant)を公開してもらいます。 ファイルサーバ機能はSambaを利用。 Sambaのインストールは、ほぼ下記のサイトを参考にしています。 どうにかブログやってるよ: windo
この記事は「1分で実現できる有用な技術 Advent Calendar 2014」の6日目の記事です。 趣旨 VagrantのRsyncを高速に行えるツールの紹介です。 VagrantとRsyncについて 最初にVagrant上でrsyncを行う事についてですが、Vagrantのデフォルトの共有フォルダだとホストOSとのファイルの所有者・グループでログが書き込めなかったり、Apacheなどの問題が起きることはVagrantユーザの悩みでした。 そのような状況下でVagrant1.5がリリースされ、Rsync機能が搭載されましたと。 Rsyncならばフォルダを共有していないので上記のような問題が発生しなくなり、体感としてVagrantで悩むことが少なくなりました。 一方でVagrant1.5から搭載されているデフォルトのRsyncは反映が遅いのでコードを編集してすぐ実行したいケースには対応で
Vagrantfile中に config.vm.synced_folder "../app", "/var/www/app", type: "rsync" のような同期フォルダのオプションでrsyncを使用したいため、rsyncを導入したときのメモ Vagrantの組み込み実行ファイル領域(C:HashiCorpVagrantembedded)にrsyncをインストールして、vagrant up中にrsyncが利用できるようにする。 前提 Vagrantは「C:HisashiCorp」にインストールしている インストール手順 MinGWをインストールする。インストール先はデフォルトの「C:MinGW」 「C:MinGW以下」(binなどのディレクトリ)のファイル、ディレクトリを「C:HashiCorpVagrantembedded」に上書きコピー 「C:HashiCorpVagrantem
Vagrant でローカル開発環境を作ってたら色々とハマったのでメモ。 Synced Folders 手持ちのマシンにアプリケーションの実行環境を用意したいとき、Vagrantを使うのはよくあると思います。 ただ、ゲストOSに ssh して開発しようとするとクリップボード共有の設定とかがかなり面倒です。 そういうときは Vagrant の Synced Folders 機能を使います。 要するに共有フォルダです。 ホストOSのフォルダをゲストOSにマウントすることで ホストOSで開発 → ゲストOSで実行 を可能にします。 しかしここで問題があって、Synced Folders を利用して開発をしていると権限まわりのトラブルが非常に多いです。 実行ユーザに権限があるはずなのに Operation not permitted とか怒られたらだいたいコイツのせいです。 ホストOSとゲストOSの
Vagrant 1.5 がリリースされました。1.1 以来の big change ということで、目新しい機能が追加されています。 目玉はやはり Vagrant Share だと思うのですが、その他にも Web システムの開発に Vagrant を使っている人には嬉しい機能が追加されています。 その一つが Rsync Synced Folder です。 Vagrant には、ホストマシンとゲストマシンとでファイルを共有、同期する機能があります。 これにより、開発はホストマシンで行い、実行は LA(MP)P 環境であるゲストマシンで行うという、いいとこ取りができました。 この機能を実現する方法として、shared folder(VirtualBox の機能)や NFS を利用することができたのですが、これに rsync による同期が追加されました。 ホストマシンからゲストマシンへ rsync
こんにちは。リスペクトの木村です。 今回は、Vagrant の「synced_folder」の話をお送りします。 今回の環境 Windows7 Pro 64bit VirtualBox 4.3.26 r98988 Vagrant 1.7.2 synced_folder とは http://docs.vagrantup.com/v2/synced-folders/index.html 簡単に説明すると、ローカルのフォルダを仮想環境の任意のパスにマウントする機能です。 これにより仮想環境側に SCP などでいちいち転送する必要がなくなり、スムーズに直接確認することが出来ます。 デフォルトでは、synced_folder が設定されていなくても Vagrantfile のあるフォルダが /vagrant としてマウントされます。 synced_folder を設定する事で、それとは別に任意でマウ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く