The Wayback Machine - https://web.archive.org/web/20221014051951/https://github.com/mritd/autobuild
Skip to content

mritd/autobuild

main
Switch branches/tags
Code

Latest commit

add auth mode

Signed-off-by: kovacs <mritd@linux.com>
db7994e

Git stats

Files

Permalink
Failed to load latest commit information.

Earthly Auto Build Repo

This repo contains the Earthfile of some useful images under the Docker Hub mritd user.

Status Docker Hub
mritd/alpine https://hub.docker.com/r/mritd/alpine
mritd/caddy https://hub.docker.com/r/mritd/caddy
mritd/certmonitor https://hub.docker.com/r/mritd/certmonitor
mritd/confluence https://hub.docker.com/r/mritd/confluence
mritd/ddns https://hub.docker.com/r/mritd/ddns
mritd/demo https://hub.docker.com/r/mritd/demo
mritd/idgen https://hub.docker.com/r/mritd/idgen
mritd/jira https://hub.docker.com/r/mritd/jira
mritd/nginx-singlepage https://hub.docker.com/r/mritd/nginx-singlepage
mritd/nodebuild https://hub.docker.com/r/mritd/nodebuild
mritd/openjdk https://hub.docker.com/r/mritd/openjdk8
mritd/poetbot https://hub.docker.com/r/mritd/poetbot
mritd/privoxy https://hub.docker.com/r/mritd/privoxy
mritd/s2h https://hub.docker.com/r/mritd/s2h
mritd/ssh https://hub.docker.com/r/mritd/ssh
mritd/docker-cli https://hub.docker.com/r/mritd/docker-cli
mritd/derper https://hub.docker.com/r/mritd/derper
mritd/bandwagonmon https://hub.docker.com/r/mritd/bandwagonmon
mritd/notibot https://hub.docker.com/r/mritd/notibot

Why not use Dockerfile?

In the past few years, I have to admit that Dockerfile is great; but as the number of Dockerfile increases, I have to do a lot of repetitive work to solve some problems.

For example, "unify the basic image version"、"fix compatibility issues for specific languages"、"cross compile for each platform", etc...

Well, I can write some "magic scripts" to be lazy; but this will cause the production-level Docker image to become unmaintainable, just like a messy network cable...

Now, Earthly has solved this problem; I unified the specific language version、the operating system at compile time、the basic runtime environment、and some general fixes. Also use GitHub Action for reliable cross-compilation to generate multi-arch images. It all got better 🤪.

Directory Structure

.
├── earthfiles                      # All Earthfiles are contained in this directory
│   ├── alpine
│   │   ├── build.sh
│   │   └── Earthfile
│   ├── caddy                       # The second-level directory name is the target image
│   │   ├── build.sh
│   │   ├── Earthfile
│   │   └── version
│   ├── openjdk
│   │   ├── build.sh                # Every image directory will have `build.sh` for automated build
│   │   ├── cgradle                 # If the build image needs some other files, they will also be saved in this directory
│   │   ├── cmvn
│   │   └── Earthfile               # Earthfile is a file similar to Dockerfile, it is modular, it is very convenient to reuse code
│   │
│   │
│   └── udcs                        # udcs (user-defined commands) is a special directory where most common Earthfiles are stored
│       ├── Earthfile               # udcs/Earthfile stores general commands that do not depend on system os and language
│       ├── image                   # udcs/image stores the basic runtime or compile image of most programming languages
│       ├── language                # udcs/language stores special commands for specific languages
│       └── os                      # udcs/os stores special commands for specific system os
│
│
├── .github
│   └── workflows                   # The workflows directory stores job definitions for each docker image automated build
│       ├── alpine.yaml
│       ├── caddy.yaml
│       ├── certmonitor.yaml
│       ├── confluence.yaml
│       ├── ddns.yaml
│       ├── demo.yaml
│       ├── idgen.yaml
│       ├── jira.yaml
│       ├── nginx-singlepage.yaml
│       ├── nodebuild.yaml
│       ├── openjdk.yaml
│       ├── poetbot.yaml
│       ├── privoxy.yaml
│       ├── s2h.yaml
│       └── ssh.yaml
└── LICENSE

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published