Sign inSign up

alexmerced/devenvsupreme

By alexmerced

•Updated over 4 years ago

Dev Environment with Python, PHP, Perl, Raku, Go, Rust, Dotnet 6, Java, Scala, Ballerina, More

Image
0

10K+

alexmerced/devenvsupreme repository overview

Repo with Docker & docker-compose.yml files⁠

VIDEO OVERVIEW OF USING DOCKER IMAGE FROM DOCKER HUB⁠

⁠Developer Environment with Docker

The Dockerfile and docker-compose.yml are meant to help create an easy to replicate and portable developer environment with the following languages.

  • Keep in mind the initial building of the dockerfile will take awhile

Through the Dockerfile based image

  • Javascript through node & deno
  • Java 17
  • Scala 2 & 3 using Coursier (sbt is installed)
  • Python 3 (via python3 command)
  • Ruby
  • PHP
  • Go
  • Rust
  • Ballerina (bal version)
  • Perl 5
  • Raku (Rakudo Compiler, Raku is a spinoff langauge from Perl 6, rakudo --version)
  • DotNet 6

Docker Compose file will also include

  • postgres database being serves on port 5432
  • mongodb database beign served on

⁠Building just the image

Make sure to edit the command below with your gitusername and email

Build Command

docker build -my_dev_environ --build-arg gitusername="Your Name" --build-arg gitemail="[email protected]" .

docker run -it my_dev_environ

⁠Setting up the environment using Docker-Compose

First make sure to enter your username and the email on your github account in the env variables.

      args:
        gitusername: "Your Name"
        gitemail: "[email protected]"

Then to turn on the environment (include mongo and postgres databases)

docker-compose up

To turn off the environment

docker-compose down

⁠Opening Up in VSCode

  • download the remote-containers vscode extension
  • once the container is running
  • open the command-pallette and select "Remote-Containers: Attach to Running Container"
  • You should be able to attach vscode to the running container and work from it

another option is to copy the dockerfile and docker-compose.yml to a new directory you want to work out of and select "Remote-Containers: Open folder in a container" it should detect the files and give you the option of opening using either. Select the dockerfile or select docker-compose.yml and select the languages service.

⁠Running Individual Services

If you want to turn on the services individually incase you don't need all three:

  • docker-compose up languages
  • docker-compose up postgres
  • docker-compose up mongodb

to turn off

  • docker-compose down languages
  • docker-compose down postgres
  • docker-compose down mongodb

⁠Running Single Commands

If you just wanted to run a single command against a container, follow this example where we run bash in the languages container.

docker-container run languages /bin/bash/

Tag summary

Content type

Image

Digest

Size

2.2 GB

Last updated

over 4 years ago

docker pull alexmerced/devenvsupreme