瀏覽代碼

Add Alpine version 3.16

Mohammad Abdolirad 2 年之前
父節點
當前提交
09c3934313
共有 3 個文件被更改,包括 42 次插入5 次删除
  1. 5 5
      .github/workflows/ci.yml
  2. 35 0
      3.16/Dockerfile
  3. 2 0
      README.md

+ 5 - 5
.github/workflows/ci.yml

@@ -11,13 +11,13 @@ jobs:
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        alpine: [ "3.13", "3.14", "3.15" ]
+        alpine: [ "3.13", "3.14", "3.15", "3.16" ]
         variant: [ "", "openrc" ]
         latest: [ false ]
-#        include:
-#          - alpine: 3.16
-#            variant: ""
-#            latest: true
+        include:
+          - alpine: 3.16
+            variant: ""
+            latest: true
     steps:
       - name: Checkout
         uses: actions/checkout@v2

+ 35 - 0
3.16/Dockerfile

@@ -0,0 +1,35 @@
+FROM alpine:3.16.1 AS base
+
+RUN echo '@edge http://dl-cdn.alpinelinux.org/alpine/edge/main' >> /etc/apk/repositories \
+    && echo '@edgecommunity http://dl-cdn.alpinelinux.org/alpine/edge/community' >> /etc/apk/repositories \
+    && echo '@testing http://dl-cdn.alpinelinux.org/alpine/edge/testing' >> /etc/apk/repositories \
+    && apk add --no-cache su-exec ca-certificates
+
+FROM base AS openrc
+
+RUN apk add --no-cache openrc \
+    # Disable getty's
+    && sed -i 's/^\(tty\d\:\:\)/#\1/g' /etc/inittab \
+    && sed -i \
+        # Change subsystem type to "docker"
+        -e 's/#rc_sys=".*"/rc_sys="docker"/g' \
+        # Allow all variables through
+        -e 's/#rc_env_allow=".*"/rc_env_allow="\*"/g' \
+        # Start crashed services
+        -e 's/#rc_crashed_stop=.*/rc_crashed_stop=NO/g' \
+        -e 's/#rc_crashed_start=.*/rc_crashed_start=YES/g' \
+        # Define extra dependencies for services
+        -e 's/#rc_provide=".*"/rc_provide="loopback net"/g' \
+        /etc/rc.conf \
+    # Remove unnecessary services
+    && rm -f /etc/init.d/hwdrivers \
+            /etc/init.d/hwclock \
+            /etc/init.d/hwdrivers \
+            /etc/init.d/modules \
+            /etc/init.d/modules-load \
+            /etc/init.d/modloop \
+    # Can't do cgroups
+    && sed -i 's/\tcgroup_add_service/\t#cgroup_add_service/g' /lib/rc/sh/openrc-run.sh \
+    && sed -i 's/VSERVER/DOCKER/Ig' /lib/rc/sh/init.sh
+
+CMD ["/sbin/init"]

+ 2 - 0
README.md

@@ -10,6 +10,8 @@
 | `3.14-openrc` ([3.14/Dockerfile](https://github.com/dockage/alpine/blob/master/3.14/Dockerfile)) |   [![MicroBadger Size (3.14-openrc)](https://badgen.net/docker/size/dockage/alpine/3.14-openrc?icon=docker&label=size)](https://hub.docker.com/r/dockage/alpine)   | [![Docker Layers (3.14-openrc)](https://badgen.net/docker/layers/dockage/alpine/3.14-openrc/amd64?icon=docker&label=layers)](https://hub.docker.com/r/dockage/alpine) |
 |   `3.15` ([3.15/Dockerfile](https://github.com/dockage/alpine/blob/master/3.15/Dockerfile))   | [![Docker Size (3.15)](https://badgen.net/docker/size/dockage/alpine/3.15?icon=docker&label=size)](https://hub.docker.com/r/dockage/alpine) |        [![Docker Layers (3.15)](https://badgen.net/docker/layers/dockage/alpine/3.15/amd64?icon=docker&label=layers)](https://hub.docker.com/r/dockage/alpine)        |
 | `3.15-openrc` ([3.15/Dockerfile](https://github.com/dockage/alpine/blob/master/3.15/Dockerfile)) |   [![MicroBadger Size (3.15-openrc)](https://badgen.net/docker/size/dockage/alpine/3.15-openrc?icon=docker&label=size)](https://hub.docker.com/r/dockage/alpine)   | [![Docker Layers (3.15-openrc)](https://badgen.net/docker/layers/dockage/alpine/3.15-openrc/amd64?icon=docker&label=layers)](https://hub.docker.com/r/dockage/alpine) |
+|   `3.16` ([3.16/Dockerfile](https://github.com/dockage/alpine/blob/master/3.16/Dockerfile))   | [![Docker Size (3.16)](https://badgen.net/docker/size/dockage/alpine/3.16?icon=docker&label=size)](https://hub.docker.com/r/dockage/alpine) |        [![Docker Layers (3.16)](https://badgen.net/docker/layers/dockage/alpine/3.16/amd64?icon=docker&label=layers)](https://hub.docker.com/r/dockage/alpine)        |
+| `3.16-openrc` ([3.16/Dockerfile](https://github.com/dockage/alpine/blob/master/3.16/Dockerfile)) |   [![MicroBadger Size (3.16-openrc)](https://badgen.net/docker/size/dockage/alpine/3.16-openrc?icon=docker&label=size)](https://hub.docker.com/r/dockage/alpine)   | [![Docker Layers (3.16-openrc)](https://badgen.net/docker/layers/dockage/alpine/3.16-openrc/amd64?icon=docker&label=layers)](https://hub.docker.com/r/dockage/alpine) |
 
 Dockerfile to build an alpine base image with a couple of extra packages and enable some repositories.