Labs

<< 最初 < 前ページ 次ページ > 最後 >>
icon vagrant グループに Apacheを追加 (2019/08/27)
vagrant で Apache を利用するとパーミッションの問題が発生する
一般ユーザ同様に、グループ設定を行う

Ubuntu

# usermod -aG www-data vagrant
# getent group www-data
www-data:x:33:vagrant

CentOS

# usermod -aG apache vagrant
icon [Mac]初期設定メモ(CentOS) (2019/08/21)

構成

centos7
├ docker-compose.yml
├ docker
│  ├ Docker用コンテンツ・設定など
└ Vagrantfile

Vagrantインストール

macOS用のdmgをダウンロード
Download Vagrant

初期設定

ここでは CentOS7 を作成する
$ mkdir vagrant
$ cd vagrant
$ vagrant init centos/7
Vagrantfile が作成される
以後はこのディレクトリで操作する

vagrant 起動

$ vagrant up
VirtualBox の CentOS7 が起動
初回はCentOS7イメージをダウンロード&インストール
$ vagrant box list
centos/7 (virtualbox, 1905.1)
Vagrant Box

vagrant 停止

$ vagrant halt

vagrant 再起動

$ vagrant reload

仮想マシン破棄

$ vagrant destroy

ネットワークブリッジ

固定IPも設定できるが、とりあえず DHCP でBridgeで設定する
config.vm.network "public_network"
ちなみにIP固定は
config.vm.network "public_network, ip: "IPアドレス"
Vagrant を再起動すると、どのネットーワークか聞かれるので、利用したい番号を入力
$ vagrant reload
==> default: Checking if box 'centos/7' version '1905.1' is up to date...
==> default: Clearing any previously set network interfaces...
==> default: Available bridged network interfaces:
1) en0: Wi-Fi (AirPort)
2) p2p0
3) awdl0
4) en3: Thunderbolt 1
5) en1: Thunderbolt 2
6) en4: Thunderbolt 3
7) en2: Thunderbolt 4
8) bridge0
9) en5: USB Ethernet(?)
==> default: When choosing an interface, it is usually the one that is
==> default: being used to connect to the internet.
default: Which interface should the network bridge to

ネットーワークを指定

ブリッジするネットーワークがわかっている場合は、Vagrantfile で指定できる(名称は筐体によって異なる)
config.vm.network "public_network", bridge: "en0: Wi-Fi (AirPort)"

SSH接続

$ vagrant ssh

OS確認

$ cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

root & vagrantユーザ

sudo

$ sudo su
パスワード不要 ※sudoにはパスワードは設定しない事

su

$ su
パスワードはvagrant

vagrant

$ su vagrant
パスワードはvagrant

ifconfigインストール

デフォルトでは ifconfig が利用できないのでインストール
# yum install net-tools
ifconfig で確認すると DHCPで IP が割り振られている
$ ifconfig
eth1: flags=4163 mtu 1500
inet 192.168.11.9 netmask 255.255.255.0 broadcast 192.168.11.255

DockerCompose インストール

Vagrantで docker-compose を起動する場合、vagrant-docker-compose が必要
$ vagrant plugin install vagrant-docker-compose

VirtualBoxイメージのメモリ&CPU設定

Vagrantfile ファイルに記述
  config.vm.provider "virtualbox" do |vb|
    vb.memory = "2048"
    vb.cpus = "2"
  end

共有フォルダ設定

ホストOS(Mac)とゲストOS(VirutalBox上のOS)ディレクトリを共有する場合 vagrant-vbguest が必要
VirtualBox での共有ディレクトリと同じで、
mount -t vboxsf -o uid=ユーザ,gid=ユーザ,dmode=0777,fmode=0666 共有フォルダ名 マウントパス
といった Vagrantfile ファイルに基づいて設定してくれる

vagrant-vbguest インストール

$ vagrant plugin install vagrant-vbguest
$ vagrant vbguest
$ vagrant vbguest --status
[default] GuestAdditions 6.0.10 running --- OK.

Vagrantfile 設定

共有ディレクトリ vagrant のパーミッションを変更する
config.vm.synced_folder ".", "/vagrant", mount_options: ['dmode=775','fmode=666']

vagrant plugin 確認

$ vagrant plugin list
vagrant-docker-compose (1.3.0, global)
vagrant-vbguest (0.19.0, global)

Vagrantfile 設定

config.vm.synced_folder "./docker", "/vagrant/docker"
<< 最初 < 前ページ 次ページ > 最後 >>