Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Build OSCam IPv6 (Alpine)

on:
push:
branches: [ "master" ]
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v3

- name: Login to GHCR
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build image
run: |
docker build -t ghcr.io/${{ github.repository_owner }}/oscam-ipv6:latest .

- name: Push image
run: |
docker push ghcr.io/${{ github.repository_owner }}/oscam-ipv6:latest
36 changes: 36 additions & 0 deletions dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
FROM alpine:3.20 AS builder

# Build dependencies
RUN apk add --no-cache \
build-base \
git \
openssl-dev \
pcsc-lite-dev \
libusb-dev \
linux-headers \
curl

# Download OSCam source
WORKDIR /src
RUN git clone https://github.com/oscam/oscam.git .

# Build OSCam with IPv6 support
RUN make USE_IPV6=1

# Runtime image
FROM alpine:3.20

RUN apk add --no-cache \
openssl \
pcsc-lite \
libusb

COPY --from=builder /src/Distribution/oscam /usr/local/bin/oscam

# Create config directory
RUN mkdir -p /config
VOLUME /config

EXPOSE 8888

CMD ["/usr/local/bin/oscam", "-c", "/config"]