erlang-eliksir wrk

This commit is contained in:
bluxmit 2022-05-26 07:49:31 +00:00
parent 81fe32e177
commit 9bb33423b5
7 changed files with 332 additions and 0 deletions

View file

@ -0,0 +1,34 @@
ARG docker_registry=docker.io/alnoda
ARG image_tag=2.2-17
FROM ${docker_registry}/java-workspace:${image_tag}
USER root
COPY ./mkdocs/mkdocs.yml /home/docs/mkdocs.yml
RUN apt-get -y update \
&& echo "------------------------------------------------------ Erlang requirements" \
&& apt-get -y install build-essential autoconf libncurses5-dev openssl libssl-dev fop xsltproc unixodbc-dev \
&& echo "------------------------------------------------------ Kerl" \
&& cd /tmp && curl -O https://raw.githubusercontent.com/kerl/kerl/master/kerl \
&& chmod a+x kerl \
&& mv /tmp/kerl /usr/bin/ \
&& kerl update releases \
&& echo "------------------------------------------------------ user" \
&& find /home -type d | xargs -I{} chown -R abc {} \
&& find /home -type f | xargs -I{} chown abc {}
USER abc
RUN echo "------------------------------------------------------ Erlang/OTP (user) " \
&& kerl build 25.0 25.0 \
&& kerl install 25.0 /home/abc/erlang/25.0 \
&& export PATH="$PATH:/home/abc/erlang/25.0/bin" \
&& echo "------------------------------------------------------ Kiex, Elixir (user) " \
&& curl -sSL https://raw.githubusercontent.com/taylor/kiex/master/install | bash -s \
&& export "PATH=$PATH:/home/abc/.kiex/bin" \
&& kiex install 1.13.4
ENV PATH="$PATH:/home/abc/erlang/25.0/bin"
ENV PATH="$PATH:/home/abc/.kiex/bin"
ENV PATH="$PATH:/home/abc/.kiex/elixirs/elixir-1.13.4/bin"

View file

@ -0,0 +1,68 @@
<p align="center">
<img src="../../img/Alnoda-white.svg" alt="Alnoda logo" width="150">
</p>
# Erlang-Elixir workspace
Docker image with Erlang, Elixir and browser-based VS-Code version.
<p align="center">
<img src="img/codeserver-collage-sm.jpg" alt="Collage" width="750">
</p>
## Why this images
1. If you need self-hosted remote development environment.
2. If you want to be one command away from coding in Erlang, Elixir.
## Start
```
docker run --name space-1 -d -p 8020-8040:8020-8040 alnoda/erlang-elixir-workspace
```
and open [localhost:8020](http://localhost:8020) in browser.
## Features
- [Erlang/OTP](https://www.erlang.org/)
- [Elixir](http://elixir-lang.org/)
- [Kerl](https://github.com/kerl/kerl) - easy building and installing of Erlang/OTP instances.
- [Kiex](https://github.com/taylor/kiex) - allows you to easily build and switch between different Elixir versions.
**Dev tools:**
- [**Code-server**](https://github.com/cdr/code-server) - open source version of popular Visual Studio Code IDE. Codeserver has
VS-Code extensions and works in browser.
- [**Terminal**](https://github.com/tsl0922/ttyd) - secure browser-based terminal.
- [**FileBrowser**](https://github.com/filebrowser/filebrowser) - manage files and folders inside the workspace, and exchange data between local environment and the workspace
- [**Cronicle**](https://github.com/jhuckaby/Cronicle) - task scheduler and runner, with a web based front-end UI. It handles both scheduled, repeating and on-demand jobs, targeting any number of worker servers, with real-time stats and live log viewer.
- [**Static File Server**](https://github.com/vercel/serve) - view any static html sites as easy as if you do it on your local machine. Serve static websites easily.
- [**Ungit**](https://github.com/FredrikNoren/ungit) - rings user friendliness to git without sacrificing the versatility of it.
- [**MkDocs**](https://squidfunk.github.io/mkdocs-material/) - create awesome documentation for your project with only markdown.
- [**Midnight Commander**](https://midnight-commander.org/) - Feature rich visual file manager with internal text viewer and editor.
- [**Process Monitor**](https://htop.dev/) - Monitor running process and resource utilization.
- Quicklaunch UI with getting started tutorial
Image is built from **Ubuntu 20.4** with the additional CLI apps
- [Zsh](https://www.zsh.org/), [Oh my Zsh](https://ohmyz.sh/)
- Python 3, Pip
- Node/nodeenv
- curl, wget, telnet, jq
- **Git:** git, git-flow, lazygit
- **File browsers:** mc, xplr
- **Text editors:** nano, vim, mcedit
- **System monitors:** ncdu, htop, glances, vizex
- **Process Control:** supervisord
- **Job scheduler:** cron
## Docs
See our guides on
- [**getting started**](https://docs.alnoda.org/get-started/common-features/)
- [**workspace tutorial**](https://docs.alnoda.org/erlang-elixir-workspace/tutorial/)
- [**project docs**](https://docs.alnoda.org/)

View file

@ -0,0 +1,70 @@
# ===========================================================
# NAVIGATION
# ===========================================================
nav:
- Home: README.md
- My apps: pages/my-apps.md
- Docs: https://docs.alnoda.org/erlang-elixir-workspace/
# ===========================================================
# CONFIGURATION
# ===========================================================
site_name: Erlang-Elixir workspace
repo_url: https://github.com/bluxmit/alnoda-workspaces
site_url: https://docs.alnoda.org
edit_uri: ""
# ===========================================================
# APPEARANCE
# ===========================================================
theme:
name: 'material'
favicon: 'assets/favicon.ico'
logo: 'assets/Alnoda-logo.svg'
custom_dir: overrides
icon:
repo: fontawesome/brands/git-alt
features:
- navigation.instant
palette:
- scheme: default
toggle:
icon: material/toggle-switch-off-outline
name: Switch to light mode
primary: deep purple
accent: indigo
- scheme: slate
toggle:
icon: material/toggle-switch
name: Switch to dark mode
primary: deep purple
accent: yellow
extra:
# Link to open when your logo is clicked
homepage: https://docs.alnoda.org
host_url: http://docs.alnoda.org
plugins:
- search
# Enable Macros and jinja2 templates
- macros:
module_name: macros/helpers
extra_javascript:
- javascripts/config.js
- https://polyfill.io/v3/polyfill.min.js?features=es6

View file

@ -0,0 +1,26 @@
ARG docker_registry=docker.io/alnoda
ARG image_tag=2.2
ARG ruby_global_version=3.1.2
FROM ${docker_registry}/codeserver-workspace:${image_tag}
USER root
COPY ./mkdocs/mkdocs.yml /home/docs/mkdocs.yml
RUN apt-get -y update \
&& echo "------------------------------------------------------ go " \
&& cd /tmp && curl -LO https://go.dev/dl/go1.18.2.linux-amd64.tar.gz \
&& tar -xvf go1.18.2.linux-amd64.tar.gz -C /usr/local \
&& rm /tmp/go1.18.2.linux-amd64.tar.gz \
&& echo "------------------------------------------------------ user" \
&& find /home -type d | xargs -I{} chown -R abc {} \
&& find /home -type f | xargs -I{} chown abc {}
ENV PATH="$PATH:/usr/local/go/bin"
ENV PATH="$PATH:/root/go/bin"
ENV PATH="$PATH:/home/abc/go/bin"
USER abc

View file

@ -0,0 +1,64 @@
<p align="center">
<img src="../../img/Alnoda-white.svg" alt="Alnoda logo" width="150">
</p>
# Go workspace
Docker image with Octave, Octave WEB UI, browser-based VS-Code version.
<p align="center">
<img src="https://raw.githubusercontent.com/bluxmit/alnoda-workspaces/main/workspaces/codeserver-workspace/img/codeserver-collage-sm.jpg" alt="Collage" width="750">
</p>
## Why this images
1. If you need self-hosted remote development environment.
2. If you want to be one terminal command away from coding in Octave.
## Start
```
docker run --name space-1 -d -p 8020-8040:8020-8040 alnoda/octave-workspace
```
and open [localhost:8020](http://localhost:8020) in browser.
## Features
-
**Dev tools:**
- [**Code-server**](https://github.com/cdr/code-server) - open source version of popular Visual Studio Code IDE. Codeserver has
VS-Code extensions and works in browser.
- [**Terminal**](https://github.com/tsl0922/ttyd) - secure browser-based terminal.
- [**FileBrowser**](https://github.com/filebrowser/filebrowser) - manage files and folders inside the workspace, and exchange data between local environment and the workspace
- [**Cronicle**](https://github.com/jhuckaby/Cronicle) - task scheduler and runner, with a web based front-end UI. It handles both scheduled, repeating and on-demand jobs, targeting any number of worker servers, with real-time stats and live log viewer.
- [**Static File Server**](https://github.com/vercel/serve) - view any static html sites as easy as if you do it on your local machine. Serve static websites easily.
- [**Ungit**](https://github.com/FredrikNoren/ungit) - rings user friendliness to git without sacrificing the versatility of it.
- [**MkDocs**](https://squidfunk.github.io/mkdocs-material/) - create awesome documentation for your project with only markdown.
- [**Midnight Commander**](https://midnight-commander.org/) - Feature rich visual file manager with internal text viewer and editor.
- [**Process Monitor**](https://htop.dev/) - Monitor running process and resource utilization.
- Quicklaunch UI with getting started tutorial
Image is built from **Ubuntu 20.4** with the additional CLI apps
- [Zsh](https://www.zsh.org/), [Oh my Zsh](https://ohmyz.sh/)
- Python 3, Pip
- Node/nodeenv
- curl, wget, telnet, jq
- **Git:** git, git-flow, lazygit
- **File browsers:** mc, xplr
- **Text editors:** nano, vim, mcedit
- **System monitors:** ncdu, htop, glances, vizex
- **Process Control:** supervisord
- **Job scheduler:** cron
## Docs
See our guides
- [**getting started**](https://docs.alnoda.org/get-started/common-features/)
- [**workspace tutorial**](https://docs.alnoda.org/octave-workspace/tutorial/)
- [**workspace docs**](https://docs.alnoda.org/octave-workspace/)
- [**project docs**](https://docs.alnoda.org/)

Binary file not shown.

After

Width:  |  Height:  |  Size: 361 KiB

View file

@ -0,0 +1,70 @@
# ===========================================================
# NAVIGATION
# ===========================================================
nav:
- Home: README.md
- My apps: pages/my-apps.md
- Docs: https://docs.alnoda.org/go-workspace/
# ===========================================================
# CONFIGURATION
# ===========================================================
site_name: Go workspace
repo_url: https://github.com/bluxmit/alnoda-workspaces
site_url: https://docs.alnoda.org
edit_uri: ""
# ===========================================================
# APPEARANCE
# ===========================================================
theme:
name: 'material'
favicon: 'assets/favicon.ico'
logo: 'assets/Alnoda-logo.svg'
custom_dir: overrides
icon:
repo: fontawesome/brands/git-alt
features:
- navigation.instant
palette:
- scheme: default
toggle:
icon: material/toggle-switch-off-outline
name: Switch to light mode
primary: light blue
accent: light blue
- scheme: slate
toggle:
icon: material/toggle-switch
name: Switch to dark mode
primary: light blue
accent: light blue
extra:
# Link to open when your logo is clicked
homepage: https://docs.alnoda.org
host_url: http://docs.alnoda.org
plugins:
- search
# Enable Macros and jinja2 templates
- macros:
module_name: macros/helpers
extra_javascript:
- javascripts/config.js
- https://polyfill.io/v3/polyfill.min.js?features=es6