Compare commits
7 Commits
3b81501f01
...
master
Author | SHA1 | Date | |
---|---|---|---|
8ed1e1b2c2 | |||
971bab4c2f | |||
db7dd90c84 | |||
d0e251de94 | |||
4d94c725a2 | |||
c26be90554 | |||
a4a332f91e |
13
Dockerfile
13
Dockerfile
@@ -5,22 +5,25 @@ LABEL org.opencontainers.image.authors="bluefox@privacynerd.de"
|
|||||||
|
|
||||||
WORKDIR /cmatrix
|
WORKDIR /cmatrix
|
||||||
|
|
||||||
RUN apk update && \
|
RUN apk update --no-cache && \
|
||||||
apk add git autoconf automake alpine-sdk ncurses-dev ncurses-static && \
|
apk add --no-cache git autoconf automake alpine-sdk ncurses-dev ncurses-static && \
|
||||||
git clone https://git.privacynerd.de/Mirrors/cmatrix.git . && \
|
git clone https://git.privacynerd.de/Mirrors/cmatrix.git . && \
|
||||||
autoreconf -i && \
|
autoreconf -i && \
|
||||||
mkdir -p /usr/lib/kbd/consolefonts /usr/share/consolefonts && \
|
mkdir -p /usr/lib/kbd/consolefonts /usr/share/consolefonts && \
|
||||||
./configure LDFLAGS="-static" && \
|
./configure LDFLAGS="-static" && \
|
||||||
make
|
make
|
||||||
|
|
||||||
CMD ["./cmatrix"]
|
|
||||||
|
|
||||||
|
|
||||||
# final cmatrix Container Image
|
# final cmatrix Container Image
|
||||||
FROM alpine
|
FROM alpine
|
||||||
|
|
||||||
LABEL org.opencontainers.image.authors="bluefox@privacynerd.de"
|
LABEL org.opencontainers.image.authors="bluefox@privacynerd.de"
|
||||||
|
|
||||||
|
RUN apk update --no-cache && \
|
||||||
|
apk add --no-cache ncurses-terminfo-base && \
|
||||||
|
adduser -g "cmatrix" -s /usr/sbin/nologin -D -H cmatrix
|
||||||
COPY --from=cmatrixbuildimage /cmatrix/cmatrix /cmatrix
|
COPY --from=cmatrixbuildimage /cmatrix/cmatrix /cmatrix
|
||||||
|
|
||||||
CMD [".cmatrix"]
|
USER cmatrix
|
||||||
|
ENTRYPOINT ["./cmatrix"]
|
||||||
|
CMD ["-akb", "-u 3"]
|
||||||
|
38
README.md
38
README.md
@@ -1,6 +1,6 @@
|
|||||||
# docker-cmatrix
|
# docker-cmatrix
|
||||||
|
|
||||||
A simple docker image I used to teach me the basics of docker images and how to build them.
|
A simple alpine-based docker image I used to teach me the basics of docker images and how to build them.
|
||||||
|
|
||||||
|
|
||||||
## Build the container
|
## Build the container
|
||||||
@@ -9,4 +9,38 @@ To build the container to an image called "cmatrix-demo", run
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
docker build -t cmatrix-demo .
|
docker build -t cmatrix-demo .
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Multi-platform builds
|
||||||
|
|
||||||
|
To do a build for multiple architectures, run:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sudo docker buildx create --name buildx-multi-arch
|
||||||
|
sudo docker buildx use buildx-multi-arch
|
||||||
|
```
|
||||||
|
|
||||||
|
Then, to build it (e.g. for amd64 and arm64/v8):
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sudo docker buildx build --no-cache --platform linux/amd64,linux/arm64/v8 -t cmatrix-demo .
|
||||||
|
```
|
||||||
|
|
||||||
|
**Please note that this will not load the images into the local image store (because it's obviously hard to run images built for the wrong architecture)! For uploading this to a container registry, see below.**
|
||||||
|
|
||||||
|
|
||||||
|
## Pushing the container to a registry
|
||||||
|
|
||||||
|
As you've got everything working, maybe it's time to share the work! This can be done by uploading the built image to a docker container registry, e.g. [Docker Hub](https://hub.docker.com/).
|
||||||
|
|
||||||
|
First, sign into your Docker Hub account with your local docker installation (to create an account head to [https://app.docker.com/signup](https://app.docker.com/signup) in your favourite browser). The procedure is self-explaining:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
docker login
|
||||||
|
```
|
||||||
|
|
||||||
|
To build and push the image directly to Docker Hub, use the following command (differs from the one above only in the --push option):
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sudo docker buildx build --no-cache --platform linux/amd64,linux/arm64/v8 -t <USER>/cmatrix-demo . --push
|
||||||
|
```
|
||||||
|
Reference in New Issue
Block a user