braintwister / docker-devel-env Goto Github PK
View Code? Open in Web Editor NEWFast, reproducible, and portable software development environments
Home Page: https://braintwister.eu/posts/2018-01-16-record.html
License: MIT License
Fast, reproducible, and portable software development environments
Home Page: https://braintwister.eu/posts/2018-01-16-record.html
License: MIT License
The eclipse plugin directory '/usr/local/eclipse/plugins/' is owned by root and the eclipse container is running by default as user. Therefore, it is not possible to update the plugins by clicking 'Help/Checking for Updates'. I will try to fix this by changing the ownership of the plugin directory to the running user.
and change apt installation to git clone and build like in the cmake module
Starting vscode-1.49.1 with
docker run -d -v /tmp/.X11-unix:/tmp/.X11-unix:ro -e DISPLAY braintwister/ubuntu-20.04-vscode-1.49.1:0.4
shows following error message using docker logs
:
/usr/share/code/bin/../code: error while loading shared libraries: libxcb-dri3.so.0: cannot open shared object file: No such file or directory
Directory '/usr/local/cuda-10.1/nsightee_plugins' is missing.
JupyterLab is the next-generation user interface of Jupyter and really great.
https://github.com/jupyterlab/jupyterlab
Release of version 3.0 is planned on 31 Jul 2020.
Running the docker image braintwister/ubuntu-18.04-cuda-9.2-cmake-3.12-gcc-7-conan-1.8-docker-18.06-eclipse-cpp-2018-09
on a docker host with CUDA 9.2, following error occurs:
WARNING: Image for service eclipse was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
Creating eclipse-cpp_eclipse_1 ... error
ERROR: for eclipse-cpp_eclipse_1 Cannot start service eclipse: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:402: container init caused \"process_linux.go:385: running prestart hook 1 caused \\\"error running hook: exit status 1, stdout: , stderr: exec command: [/usr/bin/nvidia-container-cli --load-kmods configure --ldconfig=@/sbin/ldconfig.real --device=all --compute --utility --require=cuda>=10.0 brand=tesla,driver>=384,driver<385 --pid=25159 /var/lib/docker/aufs/mnt/d8ebef6b2e08d52c075d029202420724d033c1f3d7542c59d0bec296db60d5a7]\\\\nnvidia-container-cli: requirement error: invalid expression\\\\n\\\"\"": unknown
ERROR: for eclipse Cannot start service eclipse: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:402: container init caused \"process_linux.go:385: running prestart hook 1 caused \\\"error running hook: exit status 1, stdout: , stderr: exec command: [/usr/bin/nvidia-container-cli --load-kmods configure --ldconfig=@/sbin/ldconfig.real --device=all --compute --utility --require=cuda>=10.0 brand=tesla,driver>=384,driver<385 --pid=25159 /var/lib/docker/aufs/mnt/d8ebef6b2e08d52c075d029202420724d033c1f3d7542c59d0bec296db60d5a7]\\\\nnvidia-container-cli: requirement error: invalid expression\\\\n\\\"\"": unknown
ERROR: Encountered errors while bringing up the project.
At the moment the user information is only locally available in the main entrypoint script:
docker-devel-env/ubuntu-18.04/entrypoint.sh
Lines 6 to 9 in 35879c7
By exporting them they will be available also in the module entrypoint scripts. To be sure not disturbing systems, where these variables are used, we prefix BT_
to them.
In the base image following will be configured:
git config user.name "$GIT_USER_NAME"
git config user.email "$GIT_USER_EMAIL"
git config credential.helper 'cache --timeout=3600'
Error message by building tensorflow-13.1:
Cuda Configuration Error: Cannot find cuda library libcublas.so.10.1
Instead of updating the version argument in the Dockerfile, it should be taken from the module name. Therefore, the full version string is needed, e.g. not neglecting the patch version.
I want to add lcov and gcovr to code coverage, will you help me on this?
The module versions are not enough. Changes in the configuration will overwrite published images. Therefore, I will provide image versioning to ensure that published images will not change and it is easier to determine their build state.
The module cmake
and conan
will be removed and the packages will be implicitly install by pip in the ubuntu base image.
If the module provide patch versions (x.y.z), the docker module providing only a upper level of version, e.g.minor version (x.y) should automatically take the largest patch level available during build-time.
vscode is starting in detached mode, which closes the docker container immediately after vs code was started. The option --wait
will fix this, but the container will still exit when all tabs are closed. As a workaround I keep the container running as long as the PIDs, got with pidof code
, are active.
Sometimes eclipse.org is very slow or even not reachable. In this cases it would be helpful to switch to a other download site. Also the checksum of the downloaded file should be checked.
To simplify the image list we can use a combinatorial list.
The line
- ['ubuntu-18.04', ['gcc-9', 'clang-9'], ['eclipse-cpp-2019-06', 'vscode-1.41']]
will build following images:
At the moment all intermediate images must be explicitly listed in front of the final image. For instance if the image ubuntu-16.04-cmake-3.11-gcc-7-conan-1.2-docker-18.03-eclipse-cpp-4.7.3
is needed, the image list must be
To be more clear, the image list should only contain the final images. Additionally, only the final images have to be pushed to the docker repository, which also reduce the needed storage.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.