@daemon_command<EOL>def start_local_env(recreate_containers):
assembled_spec = spec_assembler.get_assembled_specs()<EOL>required_absent_assets = virtualbox.required_absent_assets(assembled_spec)<EOL>if required_absent_assets:<EOL><INDENT>raise RuntimeError('<STR_LIT>'.format(required_absent_assets))<EOL><DEDENT>docker_ip = virtualbox.get_docker_vm_ip()<EOL>if os.path.exists(constants.COMPOSEFILE_PATH):<EOL><INDENT>try:<EOL><INDENT>stop_apps_or_services(rm_containers=recreate_containers)<EOL><DEDENT>except CalledProcessError as e:<EOL><INDENT>log_to_client("<STR_LIT>")<EOL>log_to_client(str(e))<EOL><DEDENT><DEDENT>daemon_warnings.clear_namespace('<STR_LIT>')<EOL>df_info = virtualbox.get_docker_vm_disk_info(as_dict=True)<EOL>if '<STR_LIT:M>' in df_info['<STR_LIT>'] or '<STR_LIT>' in df_info['<STR_LIT>']:<EOL><INDENT>warning_msg = '<STR_LIT>'.format(df_info['<STR_LIT>'])<EOL>daemon_warnings.warn('<STR_LIT>', warning_msg)<EOL>log_to_client(warning_msg)<EOL><DEDENT>log_to_client("<STR_LIT>")<EOL>active_repos = spec_assembler.get_all_repos(active_only=True, include_specs_repo=False)<EOL>log_to_client("<STR_LIT>")<EOL>port_spec = port_spec_compiler.get_port_spec_document(assembled_spec, docker_ip)<EOL>log_to_client("<STR_LIT>")<EOL>docker_bridge_ip = virtualbox.get_docker_bridge_ip()<EOL>nginx_config = nginx_compiler.get_nginx_configuration_spec(port_spec, docker_bridge_ip)<EOL>log_to_client("<STR_LIT>")<EOL>make_up_command_files(assembled_spec, port_spec)<EOL>log_to_client("<STR_LIT>")<EOL>compose_config = compose_compiler.get_compose_dict(assembled_spec, port_spec)<EOL>log_to_client("<STR_LIT>")<EOL>hosts.update_hosts_file_from_port_spec(port_spec)<EOL>log_to_client("<STR_LIT>")<EOL>nfs.configure_nfs()<EOL>log_to_client("<STR_LIT>")<EOL>nginx.update_nginx_from_config(nginx_config)<EOL>log_to_client("<STR_LIT>")<EOL>compose.update_running_containers_from_spec(compose_config, recreate_containers=recreate_containers)<EOL>log_to_client("<STR_LIT>")<EOL>
This command will use the compilers to get compose specs
    will pass those specs to the systems that need them. Those
    systems will in turn launch the services needed to make the
    local environment go.