
socrata/runit-java8-bionicsocrata/runit-bionic 是基于 phusion/baseimage-docker 的 Docker 镜像,旨在为构建支持多进程的容器提供基础模式和工具集。该镜像以 Ubuntu 18.04 LTS 为基础系统,集成了 runit 进程管理工具,并预装 OpenJDK 8,适用于需要可靠进程管理和多服务运行的场景。
/var/log/syslogsu 更易用,比 sudo ***面更小,且能正确设置 $HOME,路径为 /sbin/setuser/etc/host 到 Docker 主机的路由(可配置,默认使用默认路由 IP),通过脚本创建 ARK_HOST 和 ARK_HOSTNAME 环境变量,使容器能感知主机信息.j2 后缀)适用于需要在单个容器中运行多个服务、要求可靠进程管理、日志处理和定时任务的场景,尤其适合 Java 应用(预装 OpenJDK 8)、需要从 Consul 获取配置的服务,以及依赖动态生成配置文件的应用。
基于 socrata/runit-bionic 构建的容器默认运行 /etc/service 目录中配置的所有服务(通过 runit 管理)。/etc/my_init.d 目录中的脚本会在 runit 启动前按字典顺序执行,若任一脚本返回非零退出码,容器将停止启动。
构建名为 awesome_sauce 的镜像:
dockerfileFROM socrata/runit-bionic RUN mkdir /etc/service/myservice COPY myservice-run /etc/service/myservice/run COPY myservice-log /etc/service/myservice/log
run 脚本(服务启动脚本):
sh#!/bin/sh exec /sbin/setuser socrata my_binary
(以 socrata 用户身份执行 my_binary)
log 脚本(日志管理脚本):
sh#!/bin/sh exec svlogd -tt /var/log/myservice
(使用 svlogd 记录日志至 /var/log/myservice,-tt 选项添加时间戳)
/etc/service:存放 runit 服务定义,每个子目录为一个服务,包含 run(启动脚本)和 log(日志脚本)/etc/my_init.d:启动阶段执行的初始化脚本,按文件名字典顺序执行/var/log:日志存储目录,各服务日志通常存放于此(如示例中的 /var/log/myservice)
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务