2016年8月16日火曜日

flaskでhello worldを行うDockerコンテナを作成する

flaskでhello worldを行うDockerコンテナを作成するには、以下のDockerfileを使用します。

使用するDockerfile
FROM ubuntu:16.04

RUN locale-gen ja_JP.UTF-8
ENV LANG ja_JP.UTF-8
ENV LANGUAGE ja_JP:en
ENV LC_ALL ja_JP.UTF-8

RUN apt-get update \
  && apt-get -y install python-pip \
  && pip install --upgrade Flask

CMD "/bin/bash"

以下のコマンドでコンテナの作成を行う。
docker build -t ub1604flask .

以下のコマンドでコンテナの実行を行う。
docker run -v `pwd`/dat:/dat -p 5000:5000 --rm -it ub1604flask python /dat/app.py

dat/app.py
from flask import Flask
app = Flask(__name__)

@app.route("/")
def index():
    return "Hello World!"

if __name__ == "__main__":
    app.run(host='0.0.0.0')

ブラウザからはホストのIPアドレス:5000でアクセスする。

2016年8月14日日曜日

pyvboxで実行している仮想マシン名を列挙する

pyvboxで実行している仮想マシン名を列挙するには、以下のコードのようにstateを使用します。

import virtualbox

for vm in virtualbox.VirtualBox().machines:
  if vm.state == virtualbox.pool.MachineState.first_online or vm.state == virtualbox.pool.MachineState.last_online:
    print vm.name