Sign inSign up

ewsdocker/debian-eclipse-javascript

By ewsdocker

Updated over 7 years ago

Eclipse IDE for JavaScript Development in a Debian (9.5) container.

Image
0

2.1K

ewsdocker/debian-eclipse-javascript repository overview

ewsdocker/debian-eclipse-javascript:9.6.0

Eclipse IDE for JavaScript in a Debian-based Docker image.

Now with support branches for Eclipse IDE Photon and Eclipse IDE Oxygen versions.


A Docker pre-built image is available from ewsdocker/debian-eclipse-javascript.


NOTE
ewsdocker/debian-eclipse-javascript is designed to be used on a Linux system configured to support Docker user namespaces . Refer to ewsdocker Containers and Docker User Namespaces for an overview and information on running ewsdocker/debian-eclipse-javascript on a system not configured for Docker user namespaces.


Visit the ewsdocker/debian-eclipse-javascript Wiki for complete documentation of this docker image.


Installing ewsdocker/debian-eclipse-javascript

The following scripts will download the the selected ewsdocker/debian-eclipse-javascript image, create a container, setup and populate the directory structures, create the run-time scripts, and install the application's desktop file(s).

The default values will install all directories and contents in the docker host user's home directory (refer to Mapping docker host resources to the docker container),


ewsdocker/debian-eclipse-javascript:latest

docker run --rm \
           -v ${HOME}/bin:/userbin \
           -v ${HOME}/.local:/usrlocal \
           -e LMS_BASE="${HOME}/.local" \
           -e LMSBUILD_VERSION="latest" \
           -v ${HOME}/.config/docker:/conf \
           -v ${HOME}/.config/docker/debian-eclipse-javascript-latest:/root \
           --name=debian-eclipse-javascript-latest \
       ewsdocker/debian-eclipse-javascript lms-setup

ewsdocker/debian-eclipse-javascript:9.6.0-photon

docker run --rm \
           -v ${HOME}/bin:/userbin \
           -v ${HOME}/.local:/usrlocal \
           -e LMS_BASE="${HOME}/.local" \
           -v ${HOME}/.config/docker:/conf \
           -v ${HOME}/.config/docker/debian-eclipse-javascript-9.6.0:/root \
           --name=debian-eclipse-javascript-9.6.0 \
       ewsdocker/debian-eclipse-javascript:9.6.0 lms-setup  

ewsdocker/debian-eclipse-javascript:9.6.0-oxygen

docker run --rm \
           -v ${HOME}/bin:/userbin \
           -v ${HOME}/.local:/usrlocal \
           -e LMS_BASE="${HOME}/.local" \
           -v ${HOME}/.config/docker:/conf \
           -v ${HOME}/.config/docker/debian-eclipse-javascript-9.6.0-oxygen:/root \
           --name=debian-eclipse-javascript-9.6.0-oxygen \
       ewsdocker/debian-eclipse-javascript:9.6.0-oxygen lms-setup  

Refer to Mapping docker host resources to the docker container for a discussion of lms-setup and what it does.


Running the installed scripts

After running the above command script, and using the settings indicated, the docker host directories, mapped as shown in the above tables, will be configured as follows:

  • the executable scripts have been copied to ~/bin;
  • the application desktop file(s) have been copied to ~/.local/share/applications;
  • application desktops can be launched from any task bar menu;
  • the associated debian-eclipse-javascript-"version"-"branch" executable script (shown below) will be found in ~/.local/bin, and should be customized with proper local volume names;

Execution scripts


ewsdocker/debian-eclipse-javascript:latest

docker run -e DISPLAY=unix${DISPLAY} \
           -v /tmp/.X11-unix:/tmp/.X11-unix \
           -v ${HOME}/.Xauthority:${HOME}/.Xauthority \
           -v /etc/localtime:/etc/localtime:ro \
           -v /media/dev-2018:/source \
           -v /media/dev-2018/git/ewsdocker:/project \
           -v /media/dev-2018/workspace/eclipse/javascript/latest:/workspace \
           -v ${HOME}/.config/docker/debian-eclipse-javascript-latest:/root \
           --name=debian-eclipse-javascript-latest \
       ewsdocker/debian-eclipse-javascript  

ewsdocker/debian-eclipse-javascript:9.6.0-photon

docker run -e DISPLAY=unix${DISPLAY} \
           -v /tmp/.X11-unix:/tmp/.X11-unix \
           -v ${HOME}/.Xauthority:${HOME}/.Xauthority \
           -v /etc/localtime:/etc/localtime:ro \
           -v ${HOME}/source:/source \
           -v /media/dev-2018/workspace/eclipse/javascript/photon/9.6.0:/workspace \
           -v ${HOME}/git/ewsdocker:/project \
           -v ${HOME}/.config/docker/debian-eclipse-javascript-9.6.0-photon:/root \
           --name=debian-eclipse-javascript-9.6.0-photon \
      ewsdocker/debian-eclipse-javascript:9.6.0-photon  

ewsdocker/debian-eclipse-javascript:9.6.0-oxygen

docker run -e DISPLAY=unix${DISPLAY} \
           -v /tmp/.X11-unix:/tmp/.X11-unix \
           -v ${HOME}/.Xauthority:${HOME}/.Xauthority \
           -v /etc/localtime:/etc/localtime:ro \
           -v ${HOME}/source:/source \
           -v /media/dev-2018/workspace/eclipse/javascript/oxygen/9.6.0:/workspace \
           -v ${HOME}/git/ewsdocker:/project \
           -v ${HOME}/.config/docker/debian-eclipse-javascript-9.6.0-oxygen:/root \
           --name=debian-eclipse-javascript-9.6.0-oxygen \
       ewsdocker/debian-eclipse-javascript:9.6.0-oxygen  

Refer to Mapping docker host resources to the docker container for a discussion of customizing the executable scripts..


Regarding edge and edge-oxygen

For the very brave, if an edge tag is available, these instructions will download, rename and install the edge version. Good luck.


ewsdocker/debian-eclipse-javascript:edge

edge is the development tag for the 9.6.1 release tag.

docker pull ewsdocker/debian-eclipse-javascript:edge
docker tag ewsdocker/debian-eclipse-javascript:edge ewsdocker/debian-eclipse-javascript:9.6.1
docker run --rm \
           -v ${HOME}/bin:/userbin \
           -v ${HOME}/.local:/usrlocal \
           -e LMS_BASE="${HOME}/.local" \
           -v ${HOME}/.config/docker:/conf \
           -v ${HOME}/.config/docker/debian-eclipse-javascript-9.6.1-photon:/root \
           --name=debian-eclipse-javascript-9.6.1-photon \
       ewsdocker/debian-eclipse-javascript:9.6.1-photon lms-setup  

optional step:

docker rmi ewsdocker/debian-eclipse-javascript:edge  

To create and run the container, run Eclipse Photon JavaScript (9.6.1) from the Programming category of any desktop menu. From the command-line, the following should work:

~/.local/bin/debian-eclipse-javascript-9.6.1  

ewsdocker/debian-eclipse-javascript:edge-oxygen

edge-oxygen is the development tag for the 9.6.1-oxygen release tag.

docker pull ewsdocker/debian-eclipse-javascript:edge-oxygen
docker tag ewsdocker/debian-eclipse-javascript:edge-oxygen ewsdocker/debian-eclipse-javascript:9.6.1-oxygen
docker run --rm \
           -v ${HOME}/bin:/userbin \
           -v ${HOME}/.local:/usrlocal \
           -e LMS_BASE="${HOME}/.local" \
           -v ${HOME}/.config/docker:/conf \
           -v ${HOME}/.config/docker/debian-eclipse-javascript-9.6.1-oxygen:/root \
           --name=debian-eclipse-javascript-9.6.1-oxygen \
       ewsdocker/debian-eclipse-javascript:9.6.1-oxygen lms-setup  

optional step:

docker rmi ewsdocker/debian-eclipse-javascript:edge-oxygen  

To create and run the container, run Eclipse PDT 9.6.1-oxygen from the Programming category of any desktop menu, or from the command-line, the following should work:

~/.local/bin/debian-eclipse-javascript:9.6.1-oxygen  

Persistence
In order to persist the Eclipse application state, a location on the docker host must be provided to store the necessary information. This can be accomplished with the following volume option in the run command:

-v ${HOME}/.config/docker/debian-eclipse-javascript-"version"-"branch":/root  

Since the information is stored in the docker container /root directory, this statement maps the user's ~/.config/docker/debian-eclipse-javascript-"version"-"branch" docker host directory to the /root directory in the docker container.


Timestamps
It is important to keep the time and date on docker host files that have been created and/or modified by the docker containter synchronized with the docker host's settings. This can be accomplished as follows:

-v /etc/localtime:/etc/localtime:ro  

About the X11 Server / GUI Stack
The ewsdocker/debian-eclipse-javascript image is built on the ewsdocker/debian-openjre docker image, which is built on the ewsdocker/debian-base-gui docker image. These two docker images provide the X11-Server stack and several GUI system elements. The X11-Server stack is configured in the docker run command as follows:

docker run -e DISPLAY=unix${DISPLAY} \
           -v /tmp/.X11-unix:/tmp/.X11-unix \
           -v ${HOME}/.Xauthority:${HOME}/.Xauthority \

Since these options are the same for all gui containers, they should probably be the first options in the docker run command.


Copyright © 2018, 2019. EarthWalk Software.
Licensed under the GNU General Public License, GPL-3.0-or-later.

This file is part of ewsdocker/debian-eclipse-javascript.

ewsdocker/debian-eclipse-javascript is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ewsdocker/debian-eclipse-javascript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with ewsdocker/debian-eclipse-javascript. If not, see http://www.gnu.org/licenses/.

Tag summary

Content type

Image

Digest

Size

784.9 MB

Last updated

almost 8 years ago

docker pull ewsdocker/debian-eclipse-javascript