
bitwalker/alpine-elixir该Docker镜像在Alpine Linux上提供了完整的Erlang和Elixir安装,旨在运行发布版本,因此未安装构建工具。提供Erlang安装是为了避免交叉编译发布版本。当然,如果有需要原生编译工具链的NIFs,这需要用户自行处理。
default用户,家目录为/opt/app,工作目录设为该路径适用于运行已构建的Elixir应用发布版本,无需在容器内进行代码构建的场景。特别适合需要轻量级运行环境、希望避免交叉编译复杂性的Elixir应用部署。
可直接启动镜像进入Elixir交互式终端:
bash$ docker run --rm -it --user=root bitwalker/alpine-elixir iex Erlang/OTP XX [erts-X.X] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [hipe] [kernel-poll:false] Interactive Elixir (<version>) - press Ctrl+C to exit (type h() ENTER for help) iex(1)>
创建Dockerfile扩展该镜像以部署自己的Elixir应用:
dockerfileFROM bitwalker/alpine-elixir:latest # 设置暴露端口 EXPOSE 5000 ENV PORT=5000 # 设置环境变量 ENV MIX_ENV=prod # 复制应用发布包并解压 COPY yourapp.tar.gz ./ RUN tar -xzvf yourapp.tar.gz # 切换到非特权用户运行 USER default # 启动应用 CMD ./bin/yourapp foreground
default用户,家目录为/opt/app,工作目录也设为该路径。强烈建议在Dockerfile末尾添加USER default指令,使应用在非特权上下文运行。ENV指令设置应用所需环境变量,如MIX_ENV(建议设为prod)、PORT等。EXPOSE指令声明应用监听的端口,并通过ENV PORT设置端口值。MIT
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务