Skip to content

Commit

Permalink
added docker build
Browse files Browse the repository at this point in the history
  • Loading branch information
OliverKillane committed Sep 26, 2023
1 parent 765d72f commit 4773a51
Show file tree
Hide file tree
Showing 3 changed files with 70 additions and 0 deletions.
25 changes: 25 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
FROM ubuntu:latest

ARG TL_VERSION=2023
ARG TL_MIRROR=https://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz

# Install basic packages
RUN apt-get update -q
RUN apt-get install -qy build-essential wget sudo

# Install basic texlive distribution
RUN cd /tmp && \
wget --directory-prefix /tmp ${TL_MIRROR} && \
zcat < install-tl-unx.tar.gz | tar xf - && \
cd install-tl-* && \
perl ./install-tl --scheme=small --no-interaction
ENV PATH="${PATH}:/usr/local/texlive/${TL_VERSION}/bin/x86_64-linux"

# Create new user as we cannot use tlmgr as root user.
RUN groupadd -r ${DEV_USER}
RUN useradd --system --gid ${DEV_USER} --create-home ${DEV_USER}

# Update packages and tlmgr
ENV TEXMIRROR="http://ctan.math.utah.edu/ctan/tex-archive/systems/texlive/tlnet"
RUN tlmgr init-usertree
RUN tlmgr update --self --all
15 changes: 15 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"image": "ghcr.io/oliverkillane/imperial-computing-notes-dev:latest",
"customizations": {
"vscode": {
"extensions": []
}
},
"mounts": [
{
"source": "${localEnv:HOME}/.ssh",
"target": "/root/.ssh",
"type": "bind"
}
]
}
30 changes: 30 additions & 0 deletions .github/workflows/push-dev-image.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Build and Publish Image

on:
push:
branches:
- enh/development-docker

jobs:
docker:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.IMPERIAL_NOTES_GHCR_TOKEN }}
- name: Build and Push Image
uses: docker/build-push-action@v5
with:
context: ./devcontainer
push: true
platforms: linux/amd64,linux/arm64
tags: imperial-computing-notes-dev:latest
cache-from: type=gha
cache-to: type=gha,mode=max

0 comments on commit 4773a51

Please sign in to comment.