Finally, Optimizely (Episerver) published a preview version of their .NET 5 renewal.
This gives us developers wide variaty of new options to deside what kind of our future development environment is going to be.
Since there isn’t any dependency to old .NET Framework, we have now options to choose platform dependent development tools and thus be more productive with our own familiar toolset.
I did a little proof-of-concept by running Episerver on Mac in VSCode Remote Container, and it actually worked quite well.
What is VSCode Remote container?
The Visual Studio Code Remote - Containers extension lets you use a Docker container as a full-featured development environment.
This means that you can have unified development enviroments for developers based on configurations that are managed in version control.
Developer can have their environment up and running in minutes regardless if the developer is using Windows, Mac or Linux. No need to pollute your local dev machine with different tools and software.
What do you need?
- VSCode Remote Containers Extension
- Docker Desktop
You’ll find more detailed installation instruction here.
How to run it?
Since the idea is to have unified environment and simple setup for developers, I’ll provide only the link to the repository and hopefully you’ll be able to run the Alloy site without any hiccups.
- Clone this repository
- Open it on VSCode
- Wait until the remote container is up and running and all the necessary tools are automatically installed
- Open url http://localhost:57728/ and you’ll be able to create a admin user and from that on the Alloy site is fully functional
The key information is in the .devcontainer -folder where the Docker is configured and all the necessary tooling is installed.
If for some reason this didn’t work for you. You can find a quick demo here. In this video you see the second time the project is opened.
Where to go from here?
This was a POC to demonstrate the power to unify development environment within you team by using VSCode, Docker and Remote containers.
You could use this approach to simplify Optimizely development environments and of course any dev environments within your organization.
However, the remote containers functionality is only available for VSCode (for now). So this should be considered carefully before jumping into this train.
Thank you for reading and watching. Feel free to give me a comment on Twitter.