Slide 97
Slide 97 text
#PyConK #PyConK_A
97
import docker
def run_code(code, language):
client = docker.from_env()
result = client.containers.get(f"playground-{language}").exec_run(cmd=get_cmd(language))
output = result.output.decode('utf-8')
exit_code = result.exit_code
return {
"result": output,
"exit_code": exit_code
}
def get_cmd(language):
if language == "ruby":
return ["sh", "-c", "ruby main.rb"]
elif language == "rust":
return ["sh", "-c", "rustc main.rs && ./main"]
※ Docker SDK for Python に関係がないコードは省略
Python アプリのコード