This is used as docker base image for Erlang OTP. The goal is to provide images for a few last erlang releases (currently 25 / 24 / 23 / 22 / 21 / 20 / 19 / 18), in close to full feature Erlang OTP, and relatively slim images. Support to 17, R16 and R15 are provided in this repo on a best-effort basis, and not part of official-image effort in docker-library/official-images#1075 .
here is providing the latest Erlang 23 image; you may pull from official-images or build it locally:
$ docker build -t erlang:23.0 ./23 [...] ➸ docker run -it --rm erlang:23.0 Erlang/OTP 23 [erts-11.0.3] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [hipe] Eshell V11.0.3 (abort with ^G) 1> erlang:system_info(otp_release). "23" 2> os:getenv(). ["PROGNAME=erl","ROOTDIR=/usr/local/lib/erlang", "TERM=xterm","REBAR3_VERSION=3.14.4","REBAR_VERSION=2.6.4", "PWD=/","HOSTNAME=bc9486c9549b","OTP_VERSION=23.0.3", "PATH=/usr/local/lib/erlang/erts-11.0.3/bin:/usr/local/lib/erlang/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "EMU=beam","HOME=/root", "BINDIR=/usr/local/lib/erlang/erts-11.0.3/bin"] 3> 'hello_юникод_世界'. % Erlang20 now support unicode in atom 'hello_юникод_世界' 4> try 1/0 catch C:R:Stacktrace -> logger:error("caught: ~tp~n", [{C,R,Stacktrace}]) end. %% Erlang 21 now has new API for logging, logger =ERROR REPORT==== 20-Jun-2018::07:23:13.384474 === caught: {error,badarith, [{erlang,'/',[1,0],[]}, {erl_eval,do_apply,6,[{file,"erl_eval.erl"},{line,681}]}, {erl_eval,try_clauses,8,[{file,"erl_eval.erl"},{line,911}]}, {shell,exprs,7,[{file,"shell.erl"},{line,686}]}, {shell,eval_exprs,7,[{file,"shell.erl"},{line,642}]}, {shell,eval_loop,3,[{file,"shell.erl"},{line,627}]}]} 5> h(lists,foldl). %% Erlang 23 now has the documentation in the shell -spec foldl(Fun, Acc0, List) -> Acc1 when Fun :: fun((Elem :: T, AccIn) -> AccOut), Acc0 :: term(), Acc1 :: term(), AccIn :: term(), AccOut :: term(), List :: [T], T :: term(). Calls Fun(Elem, AccIn) on successive elements A of List, starting with AccIn == Acc0. Fun/2 must return a new accumulator, which is passed to the next call. The function returns the final value of the accumulator. Acc0 is returned if the list is empty. Example: > lists:foldl(fun(X, Sum) -> X + Sum end, 0, [1,2,3,4,5]). 15 > lists:foldl(fun(X, Prod) -> X * Prod end, 1, [1,2,3,4,5]). 120 ok
Read from https://github.com/erlang/otp/releases for each tag description as release announcement.
erlang:23 and erlang:22 builds from source code, based on buildpack-deps:buster; (releases before erlang:22 builds using buildpack-deps:stretch)
erlang:23.1 and later contains documentation that can be accessed in the shell
it covered gcc compiler and some popular -dev packages, for those erlang port drivers written in C; while it doesn't have java compiler so jinterface doesn't compile, assuming demand to write java code for erlang applications is low;debian:buster install building tools (compilers & -dev packages) on the fly and uninstall after compilation finished, to shrink image size;erlang:23, erlang:22, erlang:21, erlang:20, erlang:19 and erlang:18 image;$ docker images --filter=reference='erlang:*' REPOSITORY TAG IMAGE ID CREATED SIZE erlang 23.0 37433d089268 13 days ago 1.22GB erlang 23.0-slim 372b42eed86b 2 weeks ago 257MB erlang 23.0-alpine db7cf4f98f42 4 weeks ago 68.7MB erlang 22.3 c77ded78275c 13 hours ago 1.22GB erlang 22.3-slim ca5dbe8a4a46 13 hours ago 255MB erlang 22.3-alpine 661e530efb37 13 hours ago 68.9MB erlang 21.3 537ac956d5d6 13 days ago 1.07GB erlang 21.3-slim 5ffbb00d3118 2 weeks ago 251MB erlang 21.3-alpine 263294b72a1f 2 weeks ago 73.4MB erlang 20.3 82c4e39617a9 13 days ago 1.07GB erlang 20.3-slim 3e123645dc80 2 weeks ago 259MB erlang 20.3-alpine 78861bbea4a0 3 months ago 77.3MB
$ docker run -it --rm erlang:21.0 /bin/bash root@ed434f6c1081:/# ls /usr/local/lib/erlang/lib/ asn1-5.0.6 erl_interface-3.10.3 observer-2.8 ssh-4.7 common_test-1.16 erts-10.0 odbc-2.12.1 ssl-9.0 compiler-7.2 et-1.6.2 os_mon-2.4.5 stdlib-3.5 crypto-4.3 eunit-2.3.6 otp_mibs-1.2 syntax_tools-2.1.5 debugger-4.2.5 ftp-1.0 parsetools-2.1.7 tftp-1.0 dialyzer-3.3 hipe-3.18 public_key-1.6 tools-3.0 diameter-2.1.5 inets-7.0 reltool-0.7.6 wx-1.8.4 edoc-0.9.3 kernel-6.0 runtime_tools-1.13 xmerl-1.3.17 eldap-1.2.4 megaco-3.18.3 sasl-3.2 erl_docgen-0.8 mnesia-4.15.4 snmp-5.2.11 root@ed434f6c1081:/# ls /usr/local/lib/erlang/lib/ | wc -l 38
The official release 21 https://github.com/erlang/otp/tree/maint-21/lib has 39 libs, while here by default it provided 38 of them (plus erts-10.0 from erlang itself), except jinterface, because to build that one would pull all jdk dependencies and make the image too fat; if you really need that to write code in java and interface into erlang code, you may create an issue here to ask for it.


免费创建高清无水印Sora视频
Vora是一个免费创建高清无水印Sora视频的AI工具


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流

大模型驱动的Excel数据处理工具
基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备 上下文感知和代码自动完成功能,是提升开发效率的理想工具。


AI论文写作指导平台
AIWritePaper论文写作是一站式AI 论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。


AI一键生成PPT,就用博思AIPPT!
博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。


AI赋能电商视觉革命,一站式智能商拍平台
潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。


企业专属的AI法律顾问
iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。


稳定高效的流量提升解决方案,助力品牌曝光
稳定高效的流量提升解决方案,助力品牌曝光


最新版Sora2模型免费使用,一键生成无水印视频
最新版Sora2模型免费使用,一键生成无水印视频
最新AI工具、AI资讯
独家AI资源、AI项目落地

微信扫一扫关注公众号