Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

14
Python mini Hack-a-thon #43 成果発表 2014/5/24 Shinichi Nakagawa(@shinyorke) Digital OceanでPythonな環境を作ろう(途中成果)

description

Digital OceanとvagrantでPythonな開発&公開環境を作ろう、の巻。 途中成果です。

Transcript of Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

Page 1: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

Python mini Hack-a-thon #43 成果発表 2014/5/24

Shinichi Nakagawa(@shinyorke)

Digital OceanでPythonな環境を作ろう(途中成果)

Page 2: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

自己紹介• @shinyorke(シンヨーク)

• SE兼野球アナリスト

• 1979.9.6生=34歳 北海道

• 右投げ右打ち 183cm/71kg

• 専門学校→ソフトウェアハウス→独立系コンサルティングファーム=14年

• 上司&お客様曰く「フルスタックエンジニア」らしい

• インフラエンジニア一年生

Page 3: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

好きとか得意とか

Page 4: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

やったこと

Page 5: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

• vagrantを使ってDigital OceanにDropretを作る

• vagrantの設定をいじってpipとvirtualenvを入れる

• chef soloを使って野球アプリに必要なモノ(Djangoとか)を入れる←未達成

Page 6: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

Digital Ocean? 何それ美味しいの?

Page 7: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

• AWS EC2やWindows AzureみたいなVPS(IaaS)

• シンプルなコンソールとAPI

• 全インスタンスタイプがSSD

• 月額$5から(512MB Memory,1Core, 20GB SSD, 1TB Transfer)

• Asia Regionもアルヨ!(Singapore)

= シンプルで高速なVPS(らしい)

Page 8: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

• 参考: VagrantとSSDなVPS(Digital Ocean)で1時間1円の使い捨て高速サーバ環境を構築する http://blog.glidenote.com/blog/2013/12/05/digital-ocean-with-vagrant/

• Digital Oceanのアカウントを作る

• Vagrant Pluginを入れる

• Vagrantfileを書く

• vagrant upでDropretを作成&起動 -> Done!

をvagrantでやってみました

Page 9: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

Vagrant Pluginを入れる

vagrant plugin install vagrant-digitalocean

※vagrantはインストール済みという前提 http://www.vagrantup.com/

Page 10: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

Vagrantfileを書く

Vagrant.configure('2') do |config| config.vm.hostname = 'dev000.shinyorke.com' # ドメイン名 config.vm.provision "shell", inline: "apt-get install ‘※ここにインストールしたいライブラリを書く’ " # provision設定(後述) ! config.vm.provider :digital_ocean do |provider, override| override.ssh.private_key_path = 'SSH秘密鍵' override.vm.box = 'digital_ocean' override.vm.box_url = "https://github.com/smdahlen/vagrant-digitalocean/raw/master/box/digital_ocean.box" ! provider.client_id = 'クライアントID(Digital Oceanが発行)' provider.api_key = 'API Key(Digital Oceanが発行)' provider.image = 'Ubuntu 14.04 x64' # OSバージョンを指定 provider.region = 'Singapore 1' # リージョンを指定 provider.size = '512MB' # インスタンスタイプ(メモリのサイズで指定) provider.ca_path = '/usr/local/opt/curl-ca-bundle/share/ca-bundle.crt' provider.ssh_key_name = ‘shinyorke_rsa' # 鍵の名前(Digital Oceanに登録が必要) end !end

上記を環境に合わせてVagrantfileに保存

Page 11: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

Dropretを作成

vagrant up --provider=digital_ocean --provision

providerでDigital Oceanを指定 provisionは「provisionに書いた設定を使うぜ!」というおまじない

Page 12: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

できた!

とりあえず、SSHで繋がったよ!の絵

Page 13: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

宣伝!野球と知と食べ歩き

マニアでやさしい野球の話+食べ歩き、ほぼ毎月更新中 http://www.manaslink.com/gadget_baseball

Page 14: Digital OceanでPythonな環境を作ろう(途中成果) Python mini Hack-a-thon #43

ゲーム・セット!ご清聴ありがとうございました!

@shinyorke