changeset 28: |
b5ff3e39b424 |
parent 27: |
058ae6eb8c06 |
child 29: |
c8487e737e81 |
author: |
Richard Westhaver <ellis@rwest.io> |
date: |
Sun, 28 Jul 2024 20:16:53 -0400 |
files: |
Containerfile.alpine-infra Containerfile.operator Containerfile.web skelfile |
description: |
web |
1.1--- a/Containerfile.alpine-infra Sat Jul 27 02:21:46 2024 -0400
1.2+++ b/Containerfile.alpine-infra Sun Jul 28 20:16:53 2024 -0400
1.3@@ -6,12 +6,6 @@
1.4 RUN mkdir -pv .stash/src .stash/tmp
1.5 RUN ./scripts/install-rocksdb-pack.sh x86_64-unknown-linux-musl
1.6 RUN ./scripts/install-sbcl-pack.sh x86_64-unknown-linux-musl
1.7-RUN cd .stash && curl -O https://beta.quicklisp.org/quicklisp.lisp
1.8-RUN ./scripts/quicklisp-install.sh
1.9-RUN hg clone https://vc.compiler.company/comp/home .stash/src/home
1.10-# TODO update home/worker
1.11-RUN cd .stash/src/home && hg update ellis && cp .sbclrc ~/
1.12-RUN sbcl --eval "(ql:quickload '(cl-ppcre flexi-streams quri))"
1.13 RUN ./scripts/install-core-pack.sh x86_64-unknown-linux-musl
1.14 RUN ssh-keygen -A
1.15 RUN skel clean
1.16\ No newline at end of file
2.1--- a/Containerfile.operator Sat Jul 27 02:21:46 2024 -0400
2.2+++ b/Containerfile.operator Sun Jul 28 20:16:53 2024 -0400
2.3@@ -1,7 +1,7 @@
2.4 FROM localhost/dev:latest
2.5 USER root
2.6 RUN usermod -l operator --move-home --home /home/operator ${DEV}
2.7-RUN echo "operator ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/operator # yuck
2.8+RUN echo "operator ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/operator
2.9 USER operator
2.10 WORKDIR /home/operator
2.11 RUN hg clone https://vc.compiler.company/comp/infra .stash/infra
3.1--- a/Containerfile.web Sat Jul 27 02:21:46 2024 -0400
3.2+++ b/Containerfile.web Sun Jul 28 20:16:53 2024 -0400
3.3@@ -1,26 +1,25 @@
3.4-FROM localhost/dev:latest
3.5+FROM localhost/alpine-infra:latest
3.6 ARG WEB_USER=web
3.7 ARG WEB_HOME=/home/${WEB_USER}
3.8 ARG WEB_ID=840
3.9 USER root
3.10-RUN --network=host pacman -Sy go --noconfirm
3.11-RUN useradd --system -s /usr/bin/bash -u ${WEB_ID} -m ${WEB_USER}
3.12-USER ${WEB_USER}
3.13-WORKDIR ${WEB_HOME}
3.14-RUN hg clone https://vc.compiler.company/comp/infra .stash/infra
3.15-RUN .stash/infra/scripts/wg-gen-keys.sh private.key public.key
3.16-RUN hg clone https://vc.compiler.company/comp/home .stash/home
3.17-RUN cd .stash/home && hg up ${WEB_USER} && cp .homerc ${WEB_HOME}/.homerc
3.18-RUN homer install
3.19-RUN hg clone https://vc.compiler.company/comp/org .stash/org
3.20-RUN mkdir .stash/www
3.21+RUN --network=host apk add go
3.22+RUN addgroup -g 840 web
3.23+RUN adduser -D -u ${WEB_ID} -G web ${WEB_USER}
3.24 USER root
3.25-WORKDIR .stash/infra
3.26+RUN hg up
3.27 RUN skel make xcaddy
3.28 RUN skel make caddy && skel make caddy-install
3.29 RUN skel clean
3.30 USER ${WEB_USER}
3.31 WORKDIR ${WEB_HOME}
3.32-ENV WEB_USER=${WEB_USER}
3.33+RUN mkdir -p ${WEB_HOME}/.stash
3.34+RUN hg clone https://vc.compiler.company/comp/home ${WEB_HOME}/.stash/home
3.35+RUN cd ${WEB_HOME}/.stash/home && hg up ${WEB_USER} && cp caddy.json ${WEB_HOME}/caddy.json
3.36+RUN hg clone https://vc.compiler.company/comp/org ${WEB_HOME}/org
3.37+RUN mkdir -p ${WEB_HOME}/www
3.38 ENV WEB_ID=${WEB_ID}
3.39-ENTRYPOINT ["caddy"]
3.40\ No newline at end of file
3.41+ENV WEB_USER=${WEB_USER}
3.42+CMD ["run", "-c", "caddy.json"]
3.43+ENTRYPOINT ["caddy"]
3.44+EXPOSE 2020 8080 8443
3.45\ No newline at end of file
4.1--- a/skelfile Sat Jul 27 02:21:46 2024 -0400
4.2+++ b/skelfile Sun Jul 28 20:16:53 2024 -0400
4.3@@ -13,3 +13,13 @@
4.4 (:containerfile "operator")
4.5 (:containerfile "worker")
4.6 (:containerfile "web"))
4.7+:rules
4.8+((web () #$podman run --name web --replace -dt -p 8080:8080 -p 2020:2020 \
4.9+ --volume /srv/http:/home/web/www \
4.10+ web$#)
4.11+ (operator () #$podman run --name operator --replace -dt operator$#)
4.12+ (vc () #$podman run --name vc --replace -dt -p 8888:8888 vc$#)
4.13+ (dev () #$podman run --name dev --replace -dt dev$#)
4.14+ (mail () #$podman run --name mail --replace -dt mail$#)
4.15+ (alpine-infra () #$podman run --name alpine-infra --replace -dt alpine-infra$#)
4.16+ (worker () #$podman run --name worker --replace -dt worker$#))