Reticulate virtualenv created for each instance

I have successfully deployed a shiny app on which creates a virtualenv using reticulate and runs a python script.

I have included the following at the top of my app.R as recommended in many posts:

reticulate::virtualenv_create(envname = "spond_env",python = "python3")
reticulate::virtualenv_install("spond_env", packages = c('spond'),ignore_installed=TRUE)
reticulate::use_virtualenv("spond_env",required = T)

This works well, but the virtualenv is created every time I start a new instance of the app. Is there a way to build the virtualenv and have it persist without calling virtualenv_create in my script, or should I be putting this elsewhere?