Dockerfile 构建 FreeRadis 镜像

一、介绍

描述懒的写,官方自带的不支持 ARM 导致我的开发板无法使用,特地制作该镜像

二、构建镜像

2.1、Dockerfile

FROM alpine:3.15.4
LABEL maintainer="Akiraka"
#   设置容器中文,否则中文乱码
ENV LANG=C.UTF-8
#   设置时区
ENV TZ=Asia/Shanghai
ENV NAME=start-radius
#   使用阿里源与设置时间
RUN sed -i s@/dl-cdn.alpinelinux.org/@/mirrors.aliyun.com/@g /etc/apk/repositories \
    && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo '$TZ' > /etc/timezone \
    && apk update \
    && apk add talloc libressl pcre libwbclient tzdata freeradius \
    && apk add libcurl json-c libldap hiredis sqlite-dev \
    && rm -rf /tmp/* /var/cache/apk/*

# 启动脚本
RUN echo $'#!/bin/sh \n\
    # 启动服务 \n\
    radiusd \n\
    # 输出日志 \n\
    tail -f /var/log/radius/radius.log' > /${NAME} \
    # 去除首行空格并做成启动命令
    # 去除行首空格 sed 's/^[ ]*//g'
    # 去除行尾空格 sed 's/[ ]*$//g'
    # 去除所有空格 sed 's/[[:space:]]//g'
    && cat /${NAME} | sed 's/^[ ]*//g' | sed 's/[ ]*$//g' > /usr/bin/${NAME} \
    # 删除无用脚本
    && rm -rf /${NAME} \
    # 赋予权限
    && chmod +x /usr/bin/${NAME}

EXPOSE 1812/udp 1813/udp

CMD ["start-radius"]

2.2、开始构建

docker build freeradis:aka .

三、使用镜像

3.1、Docker Compose 编排

  • 配置文件内容根据自己时间情况而定
version: "2.1"
services:
  freeradius:
    image: frdiuss:3.2.0
    #image: freeradius/freeradius-server:3.2.0
    container_name: freeradius
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime
      #- /data/freeradius/clients.conf:/etc/raddb/clients.conf
      #- /data/freeradius/authorize:/etc/raddb/mods-config/files/authorize
    ports:
      - 1812:1812/udp
      - 1813:1813/udp

版权声明:
作者:Akiraka
链接:https://www.akiraka.net/linux/docker/1320.html
来源:Akiraka
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
海报
Dockerfile 构建 FreeRadis 镜像
一、介绍 描述懒的写,官方自带的不支持 ARM 导致我的开发板无法使用,特地制作该镜像 二、构建镜像 2.1、Dockerfile FROM alpine:3.15.4 LABEL maintainer="A……
<<上一篇
下一篇>>
文章目录
关闭
目 录