Sign inSign up

magnolia/vscode-server

By magnolia

•Updated over 6 years ago

Magnolia's Code Server providing VSCode interface to the development environment.

Image
0

180

magnolia/vscode-server repository overview

⁠Magnolia's VSCode Server

The VSCode Server is an extension of the code-server git project, which can be located here: https://github.com/cdr/code-server⁠.

The purpose of the Code Server is to provide a web-based IDE to developers that may not have the ability to install all the necessary development tools, or would like to ensure that the proper environment is available to them. This container comes pre-packaged with:

  • code-server 3.2.0 (VSCode)
  • NodeJS 12.x
  • Git
  • VSCode Extensions:
    • Freemarker 0.0.9
    • Freemarker/Magnolia/HTML Snippets 1.3.0
    • GitLens 10.2.1
    • indent-rainbow 7.4.0
    • Prettier 3.20.0
    • YAML 0.8.0

You can either configure the container through various arguments, or via the environment: property in docker-compose.yml.

The arguments that can be overriden are:

ArgumentDefault ValueDescription
CODE_RELEASE3.2.0This is the tagged version of code-server to install. See the Github project noted above for available version.
code_groupmagnoliaThis is the linux user group that users accessing the terminal will be assigned.
code_usermagnoliaThis is the linux username that users accessing the terminal will be assigned.
AUTHpasswordThis informs the code-server that users must login to access the web application. If no login is required, you can set this to none
PASSWORDmagnoliaThis is the password that users will need to access the web terminal.
SYSPASSWORDmagnoliaThis is the system users password.
code_app/opt/code-serverThis is where the application will be installed and run from.
code_home/var/lib/magnoliaThis is the users home directory, where users will have read-write privilleges.
code_temp/var/tmp/magnolia/uploadedThis is a temporary directory where files will be loaded.

To use this image in a docker-compose.yml file, the following acts as an example for the configuration:

services:
  magnolia-code-server:
    image: magnolia/vscode-server
    volumes:
      # This directory will be used as a shared resource directory where Magnolia Light Modules can be developed.
      - ./resources:/var/lib/magnolia/resources
    ports:
      # Port 8443 should always be exposed, as this is the port used by code-server.
      - "8443:8443"
      # You can set any ports you'd like to access as localhost:XXXX here. The following is exposing a React NodeJs application.
      - "3000:3000"
    environment:
      PASSWORD: magnolia123
      SYSPASSWORD: magnolia456
      code_user: magnolia2
    logging:
      driver: json-file

To run the container on it's own via docker, you can use the following command:

docker run \
    -e PASSWORD=magnolia123 \
    -p 127.0.0.1:8443:8443/tcp \
    -p 127.0.0.1:3000:3000/tcp \
    -v resources:/var/lib/magnolia/resources \
    magnolia/vscode-server

To stop this container, or containers:

  • Lookup the container ID's: docker ps
  • You will see a list of containers like so:
CONTAINER ID        IMAGE                    COMMAND                  CREATED              STATUS              PORTS                                                NAMES
d7c170e90ad8        magnolia/vscode-server   "/bin/sh -c 'export …"   About a minute ago   Up About a minute   127.0.0.1:3000->3000/tcp, 127.0.0.1:8443->8443/tcp   objective_meninsky
  • Copy the CONTAINER ID int the following command: docker stop CONTAINER ID.
  • docker stop d7c170e90ad8

Once your system is up and running via either docker run magnolia/vscode-server or via docker-compose up, you can access your code-server instance via http://localhost:8443/⁠.

If you have questions or comments concerning this image, please contact Scot Rhodes⁠ with Magnolia International Ltd.⁠

Tag summary

Content type

Image

Digest

Size

306.5 MB

Last updated

over 6 years ago

docker pull magnolia/vscode-server:1.0.0