‘vagrant’ タグのついている投稿
Scalewayに30分でGitHubクローンを建てるよ
GitHubクローン、Gogs(https://gogs.io/)をScalewayに5分で建てるというLTネタができるのでは?
と思ってのにやってみたら30分かかることが判明したでござる(完全敗北)
こんにちプレミアム。公開は月曜日だけど書いているのはフライデー。muraveです。
ここのところ続けて書いている Vagrant + Ansible で Scaleway にサーバーを建てるネタの集大成的な内容です。シナリオは
- CentOS7 インスタンスを起動
- CentOS7 基本設定
- 基本ツール類導入
- firewalld起動
- CEFSプロジェクト提供のエラッタに基づきセキュリティアップデート
- MySQL 5.7 導入
- Nginx 導入
- Gogs 導入
- Gogs 初期設定・インストール(Web画面)
- 最初のユーザー(管理者)作成
- テスト用リポジトリ作成
- リポジトリにpush
Gogsの導入時にNginxのリバースプロキシ設定やSELinuxのポリシーモジュール追加などやってるのでPHP動かしたりするときなどにも色々と参考になると思います(と未来の自分に語りかける)
jmurabe/scaleway-centos7gogs
(さらに…)
ScalewayのSecurity groupに期待しすぎるのをやめる
muraveです。
自分の前の記事『Vagrant+AnsibleでCentOS7のセキュリティアップデートまで』の余談で「ScalewayのSecurity groupについて事前に調整しとくと良いよ」みたいなことを書きましたが、
「Scalewayさんのスパムメール送信対策なんやな〜」
ぐらいの気持ちで接してSecurity groupはなるべく素通しで他の手段で対策したほほうが良さそう、という話。
Vagrant+AnsibleでCentOS7のセキュリティアップデートまで
VagrantでScaleway使うと開発に便利なのでは?という話
Dockerに傾倒していたので久しぶりにVagrantさわりました。muraveです。
少し前に弊社代表から「ScalewayってクラウドARM使えるし安いし、いいよ!(ネットワーク的に遠くてもいい場合には)」という情報が社内Slackに投げ込まれて気になっておりました。
Scaleaway (https://www.scaleway.com/)
私としてはX86系最安価でも 2Core + 2GB Memory + 50GB SSD + 1public IPv4 という構成で €2.99/month (€1=¥130として¥388.7) の価格性能比に魅力を感じます。
更に調べると詳細には
- VC1Sサーバー(2Cores 2GB Memory): €1/month (€0.002/hour)
- 50GB SSD Volume: €1/month (€0.002/hour)
- 1 public IPv4: €0.99/month (€0.002/hour)
合計 €2.99/month (€0.006/hour)
という価格内訳で(https://www.scaleway.com/faq/billing/)、パッケージ単位での上限が€2.99/monthとのこと。
上限が無くても時間単位で31日間フル稼働で€4.464(¥580.32)ですので、開発でインスタンスの使い捨てを繰り返して上限が無効な場合でもとんでもないことにはならないと思われます。
課金についてあまり気にしなくてもいいというのは精神的に良いです。
そんなわけでVagrantでScalewayをお気軽に使いたいと思います。
vagrant rsync-auto で rsync__exclude を変更しても反映されない場合
murave@歯医者さんから定期チェックの電話がかかってきたのでチャッチャと書かねば、です。
Vagrantで開発環境を整えていたのですが Synced Folder での権限周りで引っかかってしまいました。
それで、今頃、Rsync Synced Folder に気づいたのですが、いいですねコレ。
rsyncで同期されるので、開発機のパワー不足でクラウド環境にサーバーを建てて開発してる方も使えるはず。オススメです。
こちらの詳細は検索していただくと『Vagrant 1.5 で追加された Rsync Synced Folder が良い – Shin x blog』やQiitaの記事など良い情報がみつかるかと思います。
さて、本題です。Rsync Synced Folder で開発を始めると vagrant rsync-auto コマンドで自動でのrsync同期を行うのですが、rsync__excludeで指定した同期対象外設定を変更してもなぜか反映されないという現象に遭遇しました。
これに関する情報が日本語では見つからなかったのでメモを残しておきます。
Previous Rsync Exclude setting caused duplicate rsync on rsync-auto #4567
ここに同様の現象に遭遇している方々がいらっしゃいます。そしてthePanzさんが以下の解決策を提示しておられます。
vagrant halt
rm .vagrant/machines/default/virtualbox/synched_folders
vagrant up
同様の現象にあったらお試し下さい(Vagrantのバージョンアップも忘れずに!)
一つのVagrantfileで複数VMを管理する際のメモ
下記のようなVagrantfileで複数VMを管理している際に「vagrant halt」を行うと…
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.define :first do |first|
first.vm.box = "centos6.5.3"
first.vm.network :forwarded_port, guest: 80, host: 8080
first.vm.network :private_network, ip: "192.168.33.10"
end
config.vm.define :second do |second|
second.vm.box = "centos6.5.3"
second.vm.network :forwarded_port, guest: 80, host: 8181
second.vm.network :private_network, ip: "192.168.33.11"
end
end
2つとも停止します。
~/w/vagrantTest ❯❯❯ vagrant halt
second: Attempting graceful shutdown of VM...
first: Attempting graceful shutdown of VM...
片方だけ停止したい場合には「vagrant halt first」のように引数にマシン名を指定すれば良いのですが
停止したくないマシンまで誤って停止させるのを避けたかったので、何か良い方法はないか調べました。
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
if ARGV[1] == "first" # 追加
config.vm.define :first do |first|
first.vm.box = "centos6.5.3"
first.vm.network :forwarded_port, guest: 80, host: 8080
first.vm.network :private_network, ip: "192.168.33.10"
end
end # 追加
if ARGV[1] == "second" # 追加
config.vm.define :second do |second|
second.vm.box = "centos6.5.3"
second.vm.network :forwarded_port, guest: 80, host: 8181
second.vm.network :private_network, ip: "192.168.33.11"
end
end # 追加
end
このようにすると「vagrant halt」だけでは停止しなくなり、マシン名を指定することで停止出来るようになります。